Gui en java

Solo disponible en BuenasTareas
  • Páginas : 17 (4028 palabras )
  • Descarga(s) : 0
  • Publicado : 13 de junio de 2011
Leer documento completo
Vista previa del texto
Construcción de GUI en Java
• Tecnología Swing
– NetScape (IFC) , IBM, Lighthouse Design

Elementos de Swing
• Componentes y contenedores
– Componentes. Aspecto visible del interfaz
• botones, etiquetas, campos de texto, etc • Se sitúan dentro de algún contenedor

• JFC
– AWT, Java 2D, Accesibility, Drag and Drop, Swing

• Cambios importantes desde la versión 1.1 a 1.2
– Versión 1.1AWT – Versión 1.2 en adelante incluyen JFC: SWING – Actualmente, los navegadores no entienden JFC

– Contenedores. Almacenes de componentes
• Pueden contener a otros contenedores • Dos tipos
– Superiores: JApplet, JFrame, JDialog, – Intermedios: JPanel, JScrollPane, JSplitPane, JTabbedPane, JToolBar y otros más especializados

• Swing está apoyado en parte en AWT • AWT Abstract WindowToolkit
– La librería se encuentra en el paquete java.awt
1

3

AWT v SWING
• Por cada elemento de AWT existe un elemento en el sistema operativo que lo representa
– El resultado final dependerá de este elemento

Contenedores superiores I

• Problema:
– Hay facilidades que algún sistema operativo no tiene por lo que AWT define lo mínimo común

• Swing elimina este problema
– Definea lomáximo – Necesita los paquetes (y subpaquetes) • java.awt.* y javax.swing.*
2

• Disponen de un panel de contenidos (contentPane) • Pueden opcionalmente disponer de un menú
Container cpane = unaFrame.getContetPane(); unaFrame.setContentPane(unPanel); unaFrame.setJMenuBar(unMenuBar);

4

•1

Contenedores Superiores II
setSize() setVisible()

Construcción de un GUI. Pasos a seguir
• I.Crear un contenedor superior y obtener su contenedor intermedio • II. Seleccionar un gestor de esquemas para el contenedor intermedio • III. Crear los componentes adecuados • IV. Agregarlos al contenedor intermedio • V. Dimensionar el contenedor superior • VI. Mostrar el contenedor superior
5 7

Component Container

pack()

Window Frame

Panel Applet

Dialog

setTitle()

JDialoggetContentPane()

JFrame
getContentPane()

JApplet
getContentPane()

Contenedores Intermedios
Component
add() setLayout()

I. Crear un contenedor superior
• Hay tres clases contenedores superiores
– JFrame, JDialog, JApplet
• JFrame -> Aplicación
– Ventana de nivel superior con bordes y título
– setTitle(),getTitle(),setIconImage()

Container JComponent

• JApplet -> Applets •JDialog -> Diálogos

JPanel

JScrollPane

JSplitPane

JTabbedPane

JToolBar

– Métodos de instancia ...
void pack() Container getContentPane() void setContentPane(Container) void setJMenuBar(Menu)
6 8

•El contenedor más utilizado es JPanel

•2

II. Gestor de esquemas para cont. intermedio
• Determinan como encajan los componentes dentro de los contenedores
– Cada contenedortiene un gestor propio
• Por defecto JPanel tienen BorderLayout

IV. Agregar componentes al contenedor
• Se hace a través del método add() de los contenedores
JFrame f = new JFrame(“Un ejemplo”); Container cpane = f.getContetPane(); cpane.setLayout(new FlowLayout()); JButton bSi = new JButton(“SI”); JButton bNo = new JButton(“NO”); JLabel l = new JLabel(“Nombre”); cpane.add(l);cpane.add(bSi); cpane.add(bNo);

– Los gestores (son clases) existentes son:
• FlowLayout, BorderLayout, GridLayout, GriBagLayout, CardLayout, BoxLayout, ...

– Puede no utilizarse el gestor y colocar los elementos con setPosition() (no recomendable)

• Para asignar un gestor de esquemas
contenedor.setLayout(new FlowLayout())
9

– El orden es importante

• A un contenedor intermedio también se lepueden agregar otros contenedore intermedios
11

III. Crear componentes
• Cada componente viene determinado por una clase • Hay que crear un objeto de esa clase
JButton bSi = new JButton(“SI”); JButton bNo = new JButton(“NO”); JLabel l = new JLabel(“Nombre”); ...

V. Dimensionar el contenedor superior I
• Especifica el tamaño del contenedor superior • El método a llamar es
void...
tracking img