2011-06-21 18 views
11

Tengo mi programa principal en C++, pero ahora tengo que crear una hermosa aplicación y sé que WPF es fácil y crea hermosas aplicaciones. ¿Puede WPF trabajar con C++ o C# y C++? (En caso afirmativo, ¿cómo?) ¿Es WPF lo mejor para mí?WPF con C++, ¿es posible?

+1

esto no lo ayudará con Windows actual, pero parece que W8 tendrá buena compatibilidad con C++ nativo para GUI sofisticadas: http://arstechnica.com/microsoft/news/2011/06/windows-8-for- software-developers-the-longhorn-dream-reborn.ars – gbjbaanb

Respuesta

14

Puede usar WPF en un proyecto de C++ administrado, pero es mejor que mantenga su C++ en un ensamblaje separado y haciendo referencia a él desde un proyecto C# o VB WPF.

+0

Gracias por su respuesta. Soy un poco novato :) entonces, ¿cómo puedo hacer eso fácilmente? ¿Tiene un buen tutorial o puede decirme cómo hacerlo porque encontré muchos tutoriales en C# y WPF, pero no encontré nada para C++ y WPF. – Nazka

+0

No hay tutoriales en C++ y WPF porque WPF es moderno y funciona mejor con un lenguaje moderno como C#. Entonces, como digo, crea tu interfaz de usuario WPF usando C#, luego haz referencia a tu ensamblaje C++. Aquí hay un ejemplo de cómo hacerlo usando 'DllImport': http://www.dotnetperls.com/dllimport –

+0

Así que debería crear un proyecto de biblioteca de clases en C++ con Visual2010, para crear mis archivos DLL y usar estos archivos DLL en mi segundo aplicación en C#? ¿Eso es? ¿O no es este tipo de proyecto puede ser para C++? – Nazka

5

Sí, puede desarrollar una GUI usando el marco WPF en Administrado C + o C++/CLI. Pero no son estándares C++, por lo tanto no son multiplataforma.

Si solo quiere una GUI para su aplicación escrita en C++, entonces puede probar Qt también. La ventaja en Qt es que está completamente en C++. No es Microsoft Managed C++. La segunda ventaja es que su kit de herramientas multiplataforma. Eso significa que puede ejecutar su aplicación en Windows, Linux, Mac y en otras máquinas también.

Tener un vistazo a su documentación

Tiene un montón de herramientas para el desarrollo rápido como Qt Creator, Qt Designer y otros. Puede verlos a todos navegando por el enlace de arriba.

+0

Qt puede crear gráficos rápidos?Estoy trabajando en una aplicación financiera, por lo que mis gráficos tendrán algo así como 5k de puntos y líneas para que algo fluido sea dulce. :) – Nazka

+0

@Nazka: Qt creará gráficos mucho más rápido que WPF, créanme. – Nawaz

+1

@Nazka: Simplemente descargue el kit de herramientas, es muy pequeño; no tomará mucho tiempo para descargar. Descargue y vea los ejemplos de demostración que vienen con el kit de herramientas en sí. Son muy bonitos y geniales. – Nawaz

-3

WPF está muerto, junto con Silverlight, recuerda, MS dice que su HTML5 solamente a partir de ahora :)

El uso de WPF en C++ aplicación se puede lograr utilizando hwndSource, pero no es la solución óptima, para que se tiene que crear la aplicación de interfaz gráfica de usuario C# o VB.NET y usarla para comunicarse con su aplicación C++ a través de algún tipo de IPC.

Existen alternativas, probablemente la mejor es escribir su GUI usando Qt, que es muy respetado. Puedes obtener características similares a WPF escribiendo en QML junto con el viejo sistema basado en formularios (lo que significa que obtienes toda la velocidad de desarrollo de usar los viejos cuadros de texto aburridos y similares, y los fantásticos beneficios de GUI de usar la nueva interfaz de usuario declarativa sistema, todo en el mismo sistema. dulce).

Por supuesto, una opción decente es convertir su aplicación en un proceso de servidor y llamarla desde una interfaz de usuario HTML5 basada en el servidor web. Eso es bastante a prueba de futuro, fácil de implementar para los clientes y tan moderno como es probable que consigas.

+0

En su última solución, ¿el objetivo es construir un sitio web? ¿O un servicio web? ¿Cuál es la mejor herramienta para tener una interfaz entre mi aplicación C++ y un sitio web? (¿Solo una gran base de datos con mySql puede ser?) – Nazka

+4

¿WPF + SL está muerto? Cita tus fuentes, por favor, porque en este punto es solo un rumor feo. Si solo estás proyectando, no lo hagas como si fuera un hecho. – djdanlib

+0

@djdanlib: es un rumor de que se le aconsejaría seguir escuchando ya que no es totalmente infundado. Aquí está la entrega de hoy: http://www.i-programmer.info/news/81-web-general/2640-skydrive-drops-silverlight.html El problema con el humo es que a menudo hay un fuego debajo de él. Puede que no sea cierto, pero eso no significa que puedas ignorarlo por completo. – gbjbaanb

Cuestiones relacionadas