Distribución gráfica de la aplicación wx.
-
03-07-2019 - |
Pregunta
Siendo realmente nuevo en wx, me pregunto si hay un IDE (especialmente para Linux) que me ayude a diseñar un marco o cuadro de diálogo o lo que sea que me ayude a ver lo que estoy haciendo. Eso significa también crear el código para esos cambios.
Recuerdo mucho cuando usé compiladores de recursos para OS / 2 y Windows que generaban binarios que luego crearían la ventana, y esperaba algo similar (aunque obviamente no es binario si wx no lo admite).
Solución
Utilizo wxFormBuilder . Está escrito en wxWidgets, por lo que funciona bastante bien en Linux. Puede generar código C ++ o archivos XRC. Asegúrese de que comprende su filosofía y utilícela de esta manera:
- generar código C ++ para la GUI
- no edite el código generado por wxFormBuilder, sino que cree nuevos archivos
- en los archivos nuevos, derive nuevas clases de las clases que generó
- implemente los controladores de eventos en su propia clase (wxFB crea una función virtual para cada controlador de eventos que desea usar)
Normalmente nombro las clases / archivos generados por wxFormBuilder como, por ejemplo, MainFrameGUI, y uno con implementación (uno derivado en el cual escribo todo mi código) sería solo MainFrame. Esto le permite cambiar el diseño visual y regenerar archivos C ++ desde wxFB en cualquier momento sin sobrescribir su código.
Otros consejos
DialogBlocks funciona bastante bien para mí, aunque a veces es necesario editar el código para corregir errores manualmente Tiene un editor de propiedades que parece lo suficientemente avanzado.
Otra opción es wxGlade . No tiene tantas características como parecen tener las otras mencionadas, pero funciona lo suficientemente bien como para que no me atrevo a cambiar.
Uso Code :: Blocks IDE de http://www.codeblocks.org que tiene - editor de GUI incorporado - Compilación cruzada, para que pueda usarlo bajo Linux, OSX y Windows.
Pero sigo usando wxFormBuilder con él en lugar del editor wxSmith incorporado. Pero son compatibles con wxSmith interno.
Para Windows tienes " wx-devcpp " que es Blodsheed Dev C ++ con algunos complementos que proporcionan lo que buscas
Aquí está la página del proyecto http://wxdsgn.sourceforge.net/