Componentes Básicos

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 38

Programación con Swing

Magister Víctor Andrade Soto


Utilidad
• Aprender a utilizar el diseñador de NetBeans
• Generar, de manera casi automática, conectividad entre controles y
datos mediante la acción de arrastrar y colocar sobre formularios o
informes.
• Los objetos Swing son una mejor tecnología de desarrollo.
• Es ampliamente utilizado en corporaciones, porque es una
herramienta que permite crear rápidamente aplicaciones Windows.
• Facilidad del lenguaje permite crear aplicaciones para Windows en
muy poco tiempo.
Transformación

Migrar

Aplicaciones de consola Aplicaciones visuales


Cuando se ejecute:
– se verá un mensaje que diga “Se mostrará
formulario”,
– Escribir sobre el cuadro de texto,
– Cuando haga clic muestre un mensaje de
saludo
– Cuando cerremos la ventana termine la
aplicación y muestre antes un mensaje de
despedida..
Primero debemos añadir un “import” que referencie
objetos swing para poder usar nuestros “mensajes”:
import javax.swing.*;
Debe verse así:
Haga un click derecho sobre el formulario y elija:
Events-Window-WindowOpened
Se muestra el área de código que corresponde al
evento que “se dispara” cuando le ventana
(window/formulario) se abre (opened).
Entre las llaves escribimos el código:
String s=” Se mostrará formulario”;
JOptionPane.showMessageDialog(null,s);
Si ejecutamos la aplicación ocurrirá un evento
windowopened y como hemos escrito código para
dicho evento entonces encima del frame o formulario
se mostrará el mensaje.
Detengamos la aplicación cerrando ambas ventanas y
hagamos clic en la ficha Design. Hagamos un clic derecho
sobre el botón y elegimos Events-Mouse-MouseClicked.
Escribamos el siguiente código:
String nombre= jTextField1.getText();
JOptionPane.showMessageDialog(null,"Hola " +nombre
Por último vuelva al diseño y haga clic derecho sobre el
área del frame y seleccione Events-window-
windowClosing escriba:
String nombre=jTextField1.getText();
JOptionPane.showMessageDialog(null,"Chao " +nombre);
TextArea
Crearemos una aplicación visual con un Frame Form (el
nombre del proyecto y del form puede ser el que guste)
que tenga un TextArea (Cuadro de texto de varias líneas)
y dos botones para que se vea así:
La aplicación permitirá crear un mostrar un arreglo de 10
números con valores del 1 al 20 al hacer clic en el botón
Generar. Al hacer clic en mostrar aparecerá un cuadro de
dialogo preguntado por el número que deseamos ver. En el
ejemplo el 6 es el número 1, el 10 es el tercer número, etc.
Respecto al diseño debemos indicar que hay que incluir un
jOptionPane para los cuadros de ingreso de datos y de
mensajes.
El JTextArea incluye un objeto que lo circunda conocido
como JScrollPane que permite “enrollar” el contenido del
JTextArea. En el ejemplo nos referimos a las barras de
desplazamiento que permitirán ver del sexto número hacia
adelante que no se aprecian a la vista.
Declaración e inicialización del arreglo:

Botón Generar:
Botón Mostrar

Al ejecutar y hacer clic en el botón Generar


aparecerán 10 números aleatorios del 1 al 20
como se ve en la siguiente figura
Al hacer click en el botón mostrar:
JComboBox
Para llenar el jComboBox luego de arrastarlo y
diseñarlo busque la propiedad model haga un clic y
aparece la siguiente ventana:
Seleccione el jComboBox.
Clic en model
Elimine con Remove los elementos que aparecen
Escriba los nuevos ítems.
Presione Add para añadirlos a la lista.
Para manipular el formato numérico y obtener 2
decimales en la división usaremos la clase
NumberFormat del paquete java.text. Añada la
siguiente línea en el encabezado de la aplicación:

import java.text.*;
Añada el siguiente código para los eventos que se
indiquen:
Evento actionPerformed del botón Calcular
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
int ope;
NumberFormat nf=NumberFormat.getInstance();
nf.setMaximumFractionDigits(2);
double n1,n2, result;
result=0.0;
n1=Double.valueOf(jTextField1.getText()).doubleValue();
n2=Double.valueOf(jTextField2.getText()).doubleValue();
ope=jComboBox1.getSelectedIndex();
if(ope==0)
result=n1+n2;
if(ope==1)
result=n1-n2;
if(ope==2)
result=n1*n2;
if(ope==3)
result=n1/n2;
jTextField3.setText(nf.format(result));
}
Evento actionPerformed del botón Limpiar
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
jTextField1.setText("");
jTextField2.setText("");
jTextField3.setText("");
jTextField1.requestFocus();
}

Evento actionPerformed del botón Salir


private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
System.exit(0);
}
Uso de Listas
Magister Víctor Andrade Soto
DefaultListModel Class
Paquete: javax.swing

DefaultListModel proporciona una implementación simple de un


modelo de lista, que se puede usar para administrar elementos
mostrados por un Jlist control.
Se supone que pase 10 como
cantidad
JMenuBar, Jmenu, JmenuItem
Cree un aplicación visual sin clase principal. Vamos a
mostrar y ocultar 2 jInternalFrame en función de la
selección de opciones del menú. Coloque 2
jInternalFrame como en el ejemplo anterior (no olvide
colocar el title para cada uno). Se verá así:
Vaya a la ventana de cuadro de controles y seleccione
un jMenuBar. Arrástrelo al frame. Se verá como sigue:
Se añade una barra de menú con el menú Menu1. Una
barra de menú puede tener varios menu y un menú
varios menuItems. Cambiemos el texto del menú. Haga
doble clic en el área de diseño sobre la expresión Menu
Escriba Elegir. Ahora en la ventana del inspector haga
clic derecho sobre la expresión jMenu1 y elija add –
jMenuItem
Ahora se ve un nuevo elemento

Seleccione el jMenuItem1, vaya a la ventana de


propiedades y seleccione text y anote ir al 1.
Añada un jMenuItem más al jMenu1 y como text
que diga ir al 2. Añada un jSeparator y luego otro
jMenuItem para jMenu1 que diga Salir. Se verá
así en el inspector.
Note que todos son elementos de jMenu1 (un error
común es añadir los nuevos elementos sobre el
inmediato anterior es decir jMenuItem2 dentro de
jMenuItem1).
Para añadir código a cada item del menú por ejemplo
haga clic derecho sobre jMenuItem1 seleccione Events-
action-actionPerformed y luego escribe el código
correspondiente.
Escriba el siguiente código:
Evento actionPerformed del jMenuItem1
private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {
jInternalFrame1.setVisible(true);
jInternalFrame2.setVisible(false);
jInternalFrame1.setBounds(70,50,200,120);
}
Evento actionPerformed del jMenuItem2
private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {
jInternalFrame2.setVisible(true);
jInternalFrame1.setVisible(false);
jInternalFrame2.setBounds(70,50,200,120);
}
Evento actionPerformed del jMenuItem3
private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) {
System.exit(0);
}
JDialog

En nuestro ejemplo el proyecto se llama Ejercicio3


y el formulario o frame se llama Form2. A estas
alturas Ud. puede nombrarlos como guste.
En la ventana de controles ubique un jDialog y
arrastrelo por debajo de su diseño, más o menos
en la posición de la flecha.
Abajo a la izquierda en la ventana denominada
inspector aparece la referencia Other Components y
por debajo se ven el jDialog1 y el jOptionPane1.
A estas alturas Ud. ya declaro null el layout y cambio el
resize policy. Haga doble clic en la referencia al jDialog
y añada un botón al mismo. No modifique el tamaño
que eso lo haremos por código.
actionPerformed del botón Mostrar en el Frame principal
private void jButton1ActionPerformed(java.awt.event.ActionEvent
evt) {
// TODO add your handling code here:
jDialog1.setBounds(320,280,250,100);
jDialog1.setVisible(true);
setVisible(false);
}
actionPerformed del botón Saludar en el jDialog
private void
jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
jOptionPane1.showMessageDialog(this,"Hola a Todos");
setVisible(true);
jDialog1.setVisible(false);
}
Práctica
• Comprima la clase de hoy
• Colóquele sus apellido
• Súbalo como tarea de la semana

También podría gustarte