Diferencia entre revisiones de «WxFormBuilder»

(Página creada con «{{Definición |nombre=wxFormBuilder |imagen=WxFormBuilder.jpg |tamaño= |concepto=Diseñador de interfaz gráfica de usuario }} <div align="justify"> '''wxFormBuilder'''...»)
 
(Fuentes)
Línea 98: Línea 98:
 
</div>
 
</div>
  
[[Category:Ciencias_Informáticas]] [[Category:Software]]
+
[[Category:Ciencias_informáticas]] [[Category:Software]]

Revisión del 10:18 10 jun 2015

wxFormBuilder
Información sobre la plantilla
WxFormBuilder.jpg
Concepto:Diseñador de interfaz gráfica de usuario

wxFormBuilder es un diseñador de interfaz gráfica de usuario para el marco de aplicaciones wxWidgets, que ayuda a la creación y mantenimiento rápido de aplicaciones multiplataforma.

Características

Desarrolladores: José Antonio Hurtado, Juan Antonio Ortega, Ryan Mulder, Ryan Pusztai y Michal Bliznak Lanzamiento inicial: 2006 Última versión: 3.5.0 (junio de 2014) Estado de desarrollo: Activo. Género: Diseñador de interfaz gráfica de usuario. Escrito en: C++. Sistemas operativos: Multiplataforma (Windows, Mac OS X, Linux) Idioma: Inglés Licencia: GPL versión 2. Sitio web oficial: http://wxformbuilder.org/

Con wxFormBuilder se diseña la interfaz gráfica de usuario y se genera el código fuente de esta. También crea la estructura de las funciones que se encargan de manipular distintos eventos (manipuladores de eventos). La versión 3.5.0 es capaz de generar código para los lenguajes C++, Python, PHP, Lua y XRC.

Esta herramienta permite el diseño visual de una amplia variedad de componentes de la interfaz gráfica de usuario proporcionados por wxWidgets. La versión 3.5.0 ofrece la posibilidad de construir componentes organizados en ocho categorías:

Categorías del componente de la interfaz gráfica versión 3.5.0

  1. Comunes: botón de comando, botón de imagen, texto estático, control de texto, componente para imágenes estáticas, control de animación, distintos controles de lista, algunos con la posibilidad de contener imágenes, cajas de chequeo y de radio, etc.
  2. Adicionales: ventana para páginas HTML, control de texto enriquecido, control de texto con estilo, controles para seleccionar el color, la fuente, la fecha, archivos, directorios, control de calendario, control para ejecutar videos, etc.
  3. Contenedores: panel, ventana con divisiones, ventanas con desplazamiento, y distintos controles tipo libro, incluidos uno para interfaces avanzadas que permite reorganizar las páginas vía arrastrar y soltar, dividir cada página, entre otras funcionalidades.
  4. Menú/Barra de herramientas: barra de estado, barra de menú, menú, submenú, opción de menú, separadores, barra de herramientas, botones de la barra de herramientas con diferentes estilos, y otros.
  5. Layout (disposición): distintos componentes tipo sizer, que son los encargados de calcular automáticamente la disposición de los componentes que están incluidos en ellos.
  6. Formularios: ventana, panel, diálogo, distintos tipos de asistentes.
  7. Datos: control de árbol, control de rejilla, control de vista de datos, entre otros.
  8. Ribbon: barra, página, panel, distintos tipos de botones y otros componentes necesarios para diseñar una interfaz de usuario tipo Ribbon.

Otra característica interesante de wxFormBuilder se refiere al soporte que proporciona para el diseño de interfaces gráficas de avanzada, mediante la biblioteca wxAUI. Ello permite construir paneles y barras de herramientas que pueden estar flotantes o ancladas en la interfaz, efectos de trasparencia al arrastrar los paneles, entre otras funcionalidades.

Por último, es importante resaltar que para lograr el tamaño y el posicionamiento adecuado de los componentes dentro de los contenedores, wxFormBuilder permite colocar unos objetos especiales denominados sizers, los que implementan algoritmos especializados para lograr tal propósito.

Comparación con otras aplicaciones similares

Comparación con otras aplicaciones similares











Alternativas para su empleo en la enseñanza y el aprendizaje de la programación

Generalmente en las carreras universitarias donde se estudia la programación de computadoras es objeto de estudio el diseño de interfaces gráficas de usuario y la programación conducida por eventos.

Es posible la utilización de wxFormBuilder en aquellas instituciones que utilicen el marco de aplicaciones wxWidgets, aunque el lenguaje de programación puede variar, pudiendo ser C++, Python u otro que pueda ser enlazado con el marco mencionado. Tal alternativa es de gran interés para Cuba, pues el país posee una estrategia de migrar a software libre, y la educación debe constituirse en uno de los principales pilares de este proceso.

Para los centros donde se estudia C++ existe una alternativa interesante: la integración de wxFormBuilder con ZinjaI. Este último es un Entorno de Desarrollo Integrado (IDE) especialmente desarrollado y con numerosos recursos didácticos para la enseñanza y el aprendizaje de la programación en C++.

Pasos para crear una aplicación con interfaz gráfica

Los pasos para crear una aplicación con interfaz gráfica de usuario con wxFormBuilder y ZinjaIde son:

  1. Creación de un proyecto en ZinjaI de tipo wxFormBuilder (la plantilla deja todo configurado).
  2. Diseño de la interfaz gráfica de usuario en wxFormBuilder.
  3. Elección de los eventos que interesan en wxFormBuilder.
  4. Generación del código de la interfaz y de la estructura de los manipuladores de evento.
  5. Regreso al IDE ZinjaI.
  6. Generación de las clases heredadas.
  7. Implementación de los manipuladores de eventos en estas herencias.


Al guardar en wxFormBuilder y volver a ZinjaI, este último detecta los cambios, regenera el código, y averigua qué ventanas se agregaron para generar las herencias, qué ventanas cambiaron para agregar los nuevos eventos en las herencias que ya estaban generadas, y qué ventanas se eliminaron para eliminar las herencias que ya no se usen.

Además, para evitar problemas ZinjaI no permite editar las clases que genera wxFormBuilder. Así, es posible iterar entre los pasos 2 y 5 tantas veces como se necesiten, dejando todo el trabajo repetitivo a ZinjaI.

Fuentes

  1. http://sourceforge.net/projects/wxformbuilder/
  2. Molina, A. M. y García Á. L. wxFormBuilder, un diseñador para wxPython.

Recuperado de: http://www.caldum.org/talleres/wxFormBuilder/materiales/Taller_wxFormBuilder.pdf

  1. Novara, P. Aplicaciones visuals con ZinjaI, recuperado de: http://cucarachasracing.blogspot.com/2014/04/aplicaciones-visuales-con-zinjai.html
  2. wxFormBuilder. Recuperado de: http://en.wikipedia.org/wiki/WxFormBuilder