Herramientas de usuario

Herramientas del sitio


bloque2:componentes

Diferencias

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

Enlace a la vista de comparación

bloque2:componentes [2020/12/20 11:36] – [Exportar librerias de clases Jar (IntelliJ)] fernandobloque2:componentes [2024/09/16 20:55] (actual) – editor externo 127.0.0.1
Línea 1: Línea 1:
 ====== Creación y uso de componentes gráficos ====== ====== Creación y uso de componentes gráficos ======
-De la misma forma que podemos diseñar una interfaz gráfica en una sola clase, es recomendable dividir las diferentes secciones (componentes) de una GUI en diferentes clases. De este modo será más fácil reautilizar algunos componentes en interfaces gráficas de otras aplicaciones, además de tener clases más pequeñasy por lo tanto más escalables más fáciles de depurar.+De la misma forma que podemos diseñar una interfaz gráfica en una sola clase, es recomendable dividir las diferentes secciones (componentes) de una GUI en diferentes clases. De este modo será más fácil reutilizar algunos componentes en interfaces gráficas de otras aplicaciones, además de tener clases más pequeñas ypor lo tantomás escalables más fáciles de depurar.
  
 {{ :bloque2:awt_frame2.png?direct&300 |}} {{ :bloque2:awt_frame2.png?direct&300 |}}
Línea 186: Línea 186:
 Los ficheros Jar en IntelliJ se denominan //artifacts//. Los ficheros Jar en IntelliJ se denominan //artifacts//.
  
-Podemos crearlos de dos formas: +El atajo más directo para crear una librería Jar con solamente algunas clases es la siguiente: Desde la sección ''Project Structure'' dentro del menu ''File'', nos situamos sobre ''Artifacts''
- +
-  * Crear un nuevo jar y añadir manualmente dentro de él los ficheros que queramos. +
-  * Crear un módulo que contiene el ''package'' con las clases que queremos exportar en el fichero Jar. +
- +
-=== Añadir clases a Jar de forma manual === +
-Es el atajo más directoDesde la sección ''Project Structure'' dentro del menu ''File'', nos situamos sobre ''Artifacts''+
 {{ :bloque2:newartifact-intellij.png?direct&400 |}} {{ :bloque2:newartifact-intellij.png?direct&400 |}}
  
 Ahí pulsamos sobre el boton (+) para crear un nuevo //artifact Jar//  vacio. Ahí pulsamos sobre el boton (+) para crear un nuevo //artifact Jar//  vacio.
  
-En el siguiente cuadro de dialogo, podemos indicar un nombre para el fichero , indicar si queremos que se cree cuando hagamos un //Build// del proyecto, y en la sección inferior, pulsando sobre el símbolo (+) debemos seleccionar los archivos que queremos que incluya:+En el siguiente cuadro de dialogo, podemos indicar un nombre para el fichero , indicar si queremos que se cree cuando hagamos un //Build// del proyecto, y en la sección inferior, si queremos que nuestras librería de clases esté organizada en directorios (del mismo modo que los //packages//), podemos pulsar sobre el botón crear directorio:  
 + 
 +{{ :bloque2:createdirectory-jar.png?direct&400 |}} 
 + 
 + y después pulsando sobre el símbolo (+) debemos seleccionar los archivos //.class// que queremos que incluya:
  
 {{ :bloque2:newartifact2-intellij.png?direct&800 |}} {{ :bloque2:newartifact2-intellij.png?direct&800 |}}
Línea 207: Línea 205:
 {{ :bloque2:build-artifacts-intellij.png?direct&400 |}} {{ :bloque2:build-artifacts-intellij.png?direct&400 |}}
  
-=== Crear Jar a partir de un módulo === 
-Lo primero que debemos hacer es crear un módulo a partir del ''package'' que contiene las clases que queremos exportar. Una vez creado el módulo, desde la sección //artifacts// de //Project Structure// creamos un Jar a partir de dicho módulo. 
-Se explica en el siguiente video: 
- 
-{{ vimeo>2345234?medium }} 
 ===== Uso de componentes ===== ===== Uso de componentes =====
 Para usar componentes en un mismo proyecto, tan solo debemos importar la clase desde el paquete en el que esté. Si queremos añadirla a WindowBuilder, desde la opción //choose component// se añade la clase a la paleta de componentes, como se indica en el siguiente punto. Para usar componentes en un mismo proyecto, tan solo debemos importar la clase desde el paquete en el que esté. Si queremos añadirla a WindowBuilder, desde la opción //choose component// se añade la clase a la paleta de componentes, como se indica en el siguiente punto.
Línea 273: Línea 266:
 En el siguiente video, además de usar una interfaz dinámica gestionamos los eventos de nuestro componente personalizado mediante el //Event Dispatcher//: En el siguiente video, además de usar una interfaz dinámica gestionamos los eventos de nuestro componente personalizado mediante el //Event Dispatcher//:
 {{ vimeo>481003019?medium }} {{ vimeo>481003019?medium }}
 +
 +
 +En los siguientes dos videos utilizamos el IDE IntelliJ:
 +
 +{{ vimeo>770531646?medium }}
 +> Creación de GUI dinámica (IntelliJ)
 +
 +{{ vimeo>772557531?medium }}
 +> GUI dinámica: Manejar componentes (IntelliJ)
 ==== ListCellRenderers: personalizar JList y JComboBox ==== ==== ListCellRenderers: personalizar JList y JComboBox ====
 Otra forma de usar componentes personalizados para listar elementos es hacer que un elemento ''JList'' o ''JComboBox'' muestre nuestros componentes en sus celdas. Es decir, diseñar el aspecto de las celdas de JList, por ejemplo. Para ello nuestro componente debe implementar la interface ''ListCellRenderer'' . Otra forma de usar componentes personalizados para listar elementos es hacer que un elemento ''JList'' o ''JComboBox'' muestre nuestros componentes en sus celdas. Es decir, diseñar el aspecto de las celdas de JList, por ejemplo. Para ello nuestro componente debe implementar la interface ''ListCellRenderer'' .
bloque2/componentes.1608464212.txt.gz · Última modificación: 2024/09/16 20:55 (editor externo)