PDF de programación - GUIs en Java

Imágen de pdf GUIs en Java

GUIs en Javagráfica de visualizaciones

Publicado el 9 de Mayo del 2017
1.148 visualizaciones desde el 9 de Mayo del 2017
1,7 MB
178 paginas
Creado hace 12a (01/01/2012)
GUIs en Java

Dr. Antonio LaTorre

e-mail: [email protected]

Índice
—  Introducción
—  Programando con Swing

—  Introducción y Jerarquía de Swing
—  Gestión de Eventos: Events, Listeners y Adapters
—  Posicionamiento de los componentes: Layouts
—  Interfaz gráfica para el desarrollo de GUIs
—  Controles Swing

Introducción
—  Las interfaces gráficas permiten desarrollar aplicaciones más

complejas

cosas...

—  Aumentan la interactividad y la productividad
—  Sin embargo, su desarrollo conlleva una serie de complicaciones

añadidas
—  Los componentes de la interfaz deben ser programados
—  Necesitamos mecanismos para disponerlos en la pantalla
—  Necesitamos mecanismos de control de eventos

—  Afortunadamente, hay bibliotecas que nos facilitan mucho las

Tipos de Aplicaciones

—  Aplicaciones autónomas
— Aplicaciones de consola
— Aplicaciones con interfaz gráfico (GUI)

—  Applets
—  Aplicaciones Java Web Start

Aplicaciones autónomas
—  Sólo necesitan la máquina virtual de Java (JVM)
—  Almacenadas en el disco duro del usuario
—  Se ejecutan con: java ClaseMain
—  Interfaz formada por una o varias ventanas
—  Aplicación finaliza cuando se cierra la ventana
—  Sin restricciones de seguridad específicas

Applets
—  Necesitan de un navegador aparte de la JVM
—  Normalmente, se cargan desde un servidor Web
—  Comienzan su ejecución cuando se carga la página Web que la

contiene

—  Finaliza su ejecución cuando se cierra la página
—  Su interfaz se incluye en una región rectangular del HTML
—  Tiene restricciones de seguridad

Aplicaciones Web Start
—  Necesitan un Gestor de Aplicaciones además de la JVM
—  Normalmente, se cargan desde la Web y se almacenan en el

disco duro local

—  Se ejecutan al pulsar un enlace en una Web
—  Interfaz formado por ventanas
—  Finaliza cuando se cierra la ventana
—  Tienen restricciones de seguridad

Bibliotecas GUI

—  Abstract Windowing Toolkit (AWT)

—  Standard Widget Toolkit (SWT)

—  Swing / JFC (desde JDK 1.1.5)

AWT

—  Look & Feel dependiente de la plataforma
—  Funcionalidad independiente de la plataforma
—  Controles más básicos
—  Estándar hasta la versión 1.1.5
—  Proporcionan la gestión de eventos

SWT

—  Look & Feel nativo en cada sistema
—  Más ligero que Swing
—  En desarrollo (puede que no todos los controles estén

disponibles)

—  No incluida en JDK (hay que descargar e importar las clases)

Swing / JFC
—  Núcleo de las Java Foundation Classes
—  Estándar desde la versión de JDK 1.1.5
—  Java Look & Feel (independiente de la plataforma)

— Pluggable Look & Feel: Windows, Mac OS X, Linux

—  Otras APIs adicionales:

— Accesibilidad
— Internacionalización

•  API 2-D

•  Arrastrar y soltar


Paquetes JFC
—  javax.accessibility
—  javax.swing.plaf
—  javax.swing.text.html
—  javax.swing
—  javax.swing.plaf.basic
—  javax.swing.text.parser
—  javax.swing.border
—  javax.swing.plaf.metal
—  javax.swing.text.rtf

—  javax.swing.colorchooser
—  javax.swing.plaf.multi
—  javax.swing.tree
—  javax.swing.event
—  javax.swing.table
—  javax.swing.undo
—  javax.swing.filechooser
—  javax.swing.text

Índice
—  Introducción
—  Programando con Swing

—  Introducción y Jerarquía de Swing
—  Gestión de Eventos: Events, Listeners y Adapters
—  Posicionamiento de los componentes: Layouts
—  Interfaz gráfica para el desarrollo de GUIs
—  Controles Swing

Elementos básicos
—  Componentes GUI (widgets)

— Elementos visuales del interfaz
— Un programa con GUI es un conjunto de componentes
anidados

—  Administradores de diseño (Layouts managers)
— Gestionan la organización de los componentes

—  Creación de gráficos y texto (clase Graphics)
—  Interactividad: manejo de Eventos

Componentes de la GUI
—  Un componente es una instancia de una clase
—  Se crean como cualquier otro objeto Java
—  Tipos de componentes:

— Contenedores: contienen a otros componentes
— Lienzo (clase Canvas): superficie de dibujo
— Componentes de Interfaz: botones, listas, menús, casillas de
verificación (checkboxes), texto, etc.
— Elementos de construcción de ventanas: ventanas, marcos,
barras de menús, cuadros de diálogo, etc.

Jerarquía de clases AWT

Jerarquía de clases Swing

Primer programa con GUI

import javax.swing.*;
public class Main {

public static void main(String[] args) {
MySimpleGUI gui = new MySimpleGUI();
}
}

class MySimpleGUI extends JFrame {

public MySimpleGUI() {
setSize(400, 200);
setTitle("Ventana de tipo JFrame");
setVisible(true);
}
}

Primer programa con GUI

import javax.swing.*;


public class Main {

public static void main(String[] args) {
MySimpleGUI gui = new MySimpleGUI();
}
}

class MySimpleGUI extends JFrame {

public MySimpleGUI() {
setSize(400, 200);
setTitle("Ventana de tipo JFrame");
setVisible(true);
}
}

Importamos el paquete que
contiene los controles Swing


19

Primer programa con GUI


import javax.swing.*;
public class Main {

public static void main(String[] args) {
MySimpleGUI gui = new MySimpleGUI();
}
}

Creamos la clase que
representa nuestra ventana
extendiendo JFrame



20

class MySimpleGUI extends JFrame {

public MySimpleGUI() {
setSize(400, 200);
setTitle("Ventana de tipo JFrame");
setVisible(true);
}
}

Primer programa con GUI

import javax.swing.*;
public class Main {

public static void main(String[] args) {
MySimpleGUI gui = new MySimpleGUI();
}
}

En el constructor definimos el
tamaño y el título de la ventana
(y la hacemos visible)



}



21

class MySimpleGUI extends JFrame {


public MySimpleGUI() {
setSize(400, 200);
setTitle("Ventana de tipo JFrame");
setVisible(true);
}

Primer programa con GUI

import javax.swing.*;


public class Main {

public static void main(String[] args) {
MySimpleGUI gui = new MySimpleGUI();
}
}



class MySimpleGUI extends JFrame {

public MySimpleGUI() {
setSize(400, 200);
setTitle("Ventana de tipo JFrame");
setVisible(true);
}
}

En el método main instanciamos la
clase que acabamos de crear, para
que nos muestre la ventana


22

Jerarquía de Swing
1.  JComponent

1.  AbstractButton

JButton: El botón típico de cualquier aplicación gráfica
JMenuItem
1. 
2. 
3. 

JMenu: Elemento de un menú
JCheckBoxMenuItem: Elemento de un menú que puede ser seleccionado
JRadioButtonMenuItem: Elemento de un menú que forma parte de un conjunto del que sólo
puede haber seleccionado uno

JToggleButton: Botón de dos estados
1. 
2. 

JCheckBox: Elemento que puede estar seleccionado o no
JRadioButton: Se usa junto con ButtonGroup, y sólo puede haber uno seleccionado

2.  JColorChooser: Panel de selección de color
3.  JComboBox: Lista desplegable de la que se puede elegir un elemento
4.  JDesktopPane: Contenedor de frames internos
5.  JFileChooser: Panel de selección de fichero

1. 
2. 

3. 

23

Jerarquía de Swing
6.  JInternalFrame: Frame que puede colocarse dentro de otro contenedor
7.  JLabel: Etiqueta donde se pueden poner texto e imágenes
8.  JLayeredPane: Panel donde los objetos pueden estar a distinta profundidad
9.  JList: Lista de elementos de la que podemos elegir uno o más elementos
10.  JMenuBar: Barra superior del programa que contiene JMenu’s
11.  JOptionPane: Permite mostrar un diálogo (junto con JDialog)
12.  JPanel: Contenedor genérico sobre el que se añaden otros componentes
13.  JPopUpMenu: Menú emergente que aparece al hacer click con el botón derecho

14.  JProgressBar: Barra de progreso típica que se usa cuando una operación lleva

del ratón

cierto tiempo

15.  JScrollBar: Barra de desplazamiento
16.  JScrollPane: Panel contenedor con dos barras de desplazamiento
17.  JSeparator: Línea separadora (por ejemplo, dentro de un menú)

24

Jerarquía de Swing
18.  JSlider: Barra para seleccionar valores gráficamente
19.  JSpinner: Permite seleccionar valores de una lista pulsando arriba y abajo
20.  JSplitPane: Panel dividido en dos partes
21.  JTabbedPane: Contenedor múltiple en el que seleccionamos un conjunto de

componentes a través de pestañas

22.  JTable: Componente para mostrar información de forma tabular
23.  JTextComponent

1. 
2. 
3. 

JEditorPane: Facilita la creación de un editor
JTextArea: Permite la inserción de texto en múltiples líneas
JTextField: Igual que el anterior, pero sólo en una línea
1. 
2. 

JFormattedField: Permite introducir texto con formato
JPasswordField: El texto se oculta con el símbolo que prefiramos

24.  JToolBar: Contenedor de iconos que suele aparecer en la parte superior
25.  JToolTip: Texto emergente que aparece al situar el ratón sobre un control
26.  JTree: Permite mostrar información jerarquizada en forma de árbol

25

Jerarquía de Swing
2.  Window (AWT)

1. 
2. 

JFrame: Ventana básica de Swing
JDialog: Ventana modal (no se permite acceder a la ventana madre)
normalmente usada para mostrar diálogos (aceptar/cancelar, etc.)

26

Jerarquía de Composición

Contenedor
de alto nivel

Contenedor
intermedio

Componentes

básicos

27

Ejemplo de Jerarquía de Composición

Ventana principal (JFrame)

Panel Contenedor (JPanel)

Mensaje
(JLabel)

Botón Aceptar

(JButton)

Botón Cancelar

(JButton)

28

Pasos básicos en la construcción de
una interfaz

1.  Crear una nueva clase para nuestra ventana (o directamente

instanciar JFrame)

2.  Crear los componentes de nuestra interfaz
3.  Crear uno o varios contenedores intermedios
4.  Asociar los componentes al contenedor
5.  Asociar el contenedor a la ven
  • Links de descarga
http://lwp-l.com/pdf3447

Comentarios de: GUIs en Java (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad