Herramientas de usuario

Herramientas del sitio


bloque4:windowbuilder

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
bloque4:windowbuilder [18/10/2017 22:05] – [Exportar nuestra aplicación GUI] Fernando Valdeónbloque4:windowbuilder [16/09/2024 20:53] (actual) – editor externo 127.0.0.1
Línea 1: Línea 1:
 ====== WindowBuilder ====== ====== WindowBuilder ======
-WindowBuilder es un plugin de código abierto para Eclipse destinado a crear interfaces gráficas de usuario (GUI) de forma rápida y sencilla. Como otros muchos sistemas de este tipo, contiene una paleta de elementos que podemos añadir mediante “drag and drop”, arrastrar y soltar. En lugar de tener que escribir el códigoa medida que vamos incluyendo elementos gráficos en nuestra ventana, WindowBuilder nos autogenera el código en nuestras clases. +WindowBuilder es un plugin de código abierto para Eclipse destinado a crear interfaces gráficas de usuario (GUI) de forma rápida y sencilla. Como otros muchos sistemas de este tipo, contiene una paleta de elementos que podemos añadir mediante “drag and drop”, arrastrar y soltar. En lugar de tener que escribir el código a medida que vamos incluyendo elementos gráficos en nuestra ventana, WindowBuilder nos genera el código en nuestras clases. 
  
 Aunque WindowBuilder sea una herramienta de gran ayuda, necesitamos comprender la estructura con la que WindowBuilder crea clases para poder modificarla y darle un formato a las clases que nos ayude a separar y entender el programa.  Aunque WindowBuilder sea una herramienta de gran ayuda, necesitamos comprender la estructura con la que WindowBuilder crea clases para poder modificarla y darle un formato a las clases que nos ayude a separar y entender el programa. 
Línea 6: Línea 6:
 ===== Instalación de WindowBuilder ===== ===== Instalación de WindowBuilder =====
  
-Para poder descargar WindowBuilder iremos en Eclipse a la pestaña Help” y ahí a Eclipse MarketPlace…” . Buscamos el Plugin por su nombre en el campo buscar, y una vez que lo haya encontrado, pulsamos sobre instalar.+Para poder descargar WindowBuilder iremos en Eclipse a la pestaña ''Help'' y ahí a ''Eclipse MarketPlace…''. Buscamos el Plugin por su nombre (WindowBuilder) en el campo buscar, y una vez que lo haya encontrado, pulsamos sobre instalar.
  
 {{:bloque4:eclipsemarketplace1.png?300 |}} {{:bloque4:eclipsemarketplace1.png?300 |}}
Línea 14: Línea 14:
  
 ===== Crear un proyecto con ventanas ===== ===== Crear un proyecto con ventanas =====
-WindowBuilder está compuesto de varias herramientas para crear interfaces gráficas de usuario. Nosotros vamos a trabajar únicamente con los componentes [[https://es.wikipedia.org/wiki/Swing_(biblioteca_gr%C3%A1fica)|Swing]]. Para ellos usaremos la herramienta Swing Designer de WindowBuilder. A diferencia de otras librerias gráficas, las librerías de Swing son nativas de Java por lo que son independiente de la plataforma. Aun así hay otras librerías gráficas para java como SWT, AWT, etc.+WindowBuilder está compuesto de varias herramientas para crear interfaces gráficas de usuario. Nosotros vamos a trabajar únicamente con los componentes [[https://es.wikipedia.org/wiki/Swing_(biblioteca_gr%C3%A1fica)|Swing]]. 
 +Para ello usaremos la herramienta Swing Designer de WindowBuilder.  
 + 
 +A diferencia de otras librerias gráficas, las librerías de ''Swing'' son nativas de Java por lo que son independiente de la plataforma. Aun así hay otras librerías gráficas para java como ''SWT''''AWT'', etc
 + 
 +Por convenio, en Java una ''aplicación de escritorio'' empleará un contenedor principal de tipo ''JFrame''. Si además contiene otras ventanas secundarias dentro del programa emplearemos contenedores de tipo ''JDialog'' para estas ventanas secundarias.
  
-En Java por convenio las aplicaciones se crean de la siguiente forma: 
-  * Una aplicación de escritorio, empleará un contenedor principal de tipo JFrame. Si además contiene otras ventanas secundarias dentro del programa emplearemos contenedores de tipo JDialog para estas ventanas secundarias. 
-  * Un applet web, empleará un contenedor principal de tipo JApplet. Si además contiene otras ventanas secundarias dentro del programa emplearemos contenedores de tipo JDialog para estas ventanas secundarias. A día de hoy apenas se utilizan los applets debido a sus carencias en seguridad. 
  
 **Creamos un proyecto** de la misma forma que lo hacemos siempre: **Creamos un proyecto** de la misma forma que lo hacemos siempre:
Línea 25: Línea 27:
 {{ :bloque4:creaproyecto2.jpg?300 |}} {{ :bloque4:creaproyecto2.jpg?300 |}}
  
-**Creamos una clase JFrame** para una ventana. Dentro de nuestro proyecto, en algún package haremos lo siguiente. Debemos usar los componentes de Swing o de la sección Swing Designer de WindowBuilder:+**Creamos una clase JFrame** para una ventana. Dentro de nuestro proyecto, en algún ''package'' haremos lo siguiente. Debemos usar los componentes de Swing o de la sección Swing Designer de WindowBuilder:
  
 {{:bloque4:creaclase1.jpg?300 |}} {{:bloque4:creaclase1.jpg?300 |}}
Línea 43: Línea 45:
  ==== Establecer un Layout en mi ventana ====  ==== Establecer un Layout en mi ventana ====
  
-Para poder emplazar elementos en una ventana del tipo que sea debemos indicar una organización (Layout). Si no queremos complicarnos demasiado con un layout podemos trabajar de forma sencilla con **AbsoluteLayout**. Con este Layout podemos emplazar los elementos en el lugar que queramos, aunque no quedará tan bién a la hora de redimensionar la ventana.+Para poder emplazar elementos en una ventana de cualquier tipo debemos indicar una organización (Layout). Si no queremos complicarnos demasiado con un layout podemos trabajar de forma sencilla con **AbsoluteLayout**. Con este Layout podemos emplazar los elementos en el lugar que queramos, aunque no quedará tan bién a la hora de redimensionar la ventana.
  
 {{:bloque4:contentpane.png?300 |}} {{:bloque4:contentpane.png?300 |}}
Línea 51: Línea 53:
  
 Si queremos aprender el manejo de otros layout podemos acceder a la documentación oficial de Java en Oracle: https://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html Si queremos aprender el manejo de otros layout podemos acceder a la documentación oficial de Java en Oracle: https://docs.oracle.com/javase/tutorial/uiswing/layout/visual.html
 +
 +{{ vimeo>246942867?medium }}
  
  
  ===== Exportar fichero ejecutable con nuestra aplicación =====  ===== Exportar fichero ejecutable con nuestra aplicación =====
-{{ :bloque4:exportarjar.png?400|}}+{{ :bloque4:exportarjar.png?300|}}
 Desde el menú File, export… podremos crear un Jar Ejecutable para ejecutar con un doble click nuestra aplicación en cualquier equipo que tenga la máquina virtual de Java (JVM). Para ello necesitamos que el equipo en el que será ejecutado tenga el paquete JRE de Java. Desde el menú File, export… podremos crear un Jar Ejecutable para ejecutar con un doble click nuestra aplicación en cualquier equipo que tenga la máquina virtual de Java (JVM). Para ello necesitamos que el equipo en el que será ejecutado tenga el paquete JRE de Java.
  
-Indicaremos //Runnable Jar// , le daremos nombre al Jar Ejecutable e indicaremos el lugar donde queremos crearlo.+Indicaremos //Runnable Jar// , indicaremos la clase que contiene el ''método main'' (si no aparece, bastará con ejecutar la clase main previamente), le daremos nombre al Jar Ejecutable e indicaremos el lugar donde queremos crearlo.
  
-----+La plataforma Java, no necesita un fichero ''exe'' para ejecutar (traducir el código a código máquina) una ventana, porque la ventana en sí (p.e. JFrame) es un componente nativo de Java, y sabe perfectamente como traducirlo.
  
-(c) 2017 Fernando Valdeón+ 
 + 
 +Por último recordar que se debe marcar la opción de empaquetar librerías en el JAR si mi programa incluye otros JAR con librerías. 
 + 
 +{{ :bloque4:empaquetar_libs_jar.png?300 |}} 
 + 
 +---- 
 +(c) {{date> %Y}} Fernando Valdeón
  
bloque4/windowbuilder.1508364334.txt.gz · Última modificación: 16/09/2024 20:53 (editor externo)