Publicado el 14 de Enero del 2017
1.158 visualizaciones desde el 14 de Enero del 2017
172,2 KB
7 paginas
Creado hace 19a (09/05/2006)
Ejemplo de la Clase Persona
Persona p = (Persona) o;
if((nombre.equals(p.getNombre())) && (edad == p.getEdad()))
else
return true;
return false;
return ("Nombre: " + nombre + "; Edad: " + edad);
this.nombre = nombre;
this.edad = edad;
public class Persona
{
}
// Declaración de atributos
private String nombre;
private int edad;
// Constructor
public Persona(String nombre, int edad)
{
}
// Definición de métodos
public String getNombre ()
{
}
public int getEdad ()
{
}
public boolean equals (Object o)
{
}
public String toString ()
{
}
return nombre;
return edad;
Documento realizado por la alumna Marta Galán
Ejemplo de Ventana Gráfica en Swing (Gestión de Eventos)
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.Container;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowListener;
import java.awt.event.WindowEvent;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.util.ArrayList;
public class Ventana extends JFrame
{
// Declaración de variables
private JTextField txtNombre;
private JTextField txtEdad;
private JButton btnGuardar;
private JButton btnSalir;
private ArrayList ar = new ArrayList();
// Definición del método main
public static void main (String s[])
{
new Ventana ("Ejemplo Examen");
}
// Constructor
public Ventana (String titulo)
{
{
});
Container c = this.getContentPane();
c.setLayout(new BorderLayout());
JLabel lblTitulo = new JLabel("Ejemplo de Ventana");
lblTitulo.setFont(new Font("Arial", Font.BOLD, 14));
c.add(lblTitulo, BorderLayout.NORTH);
JLabel lblNombre = new JLabel("Nombre: ");
txtNombre = new JTextField (10);
txtNombre.addKeyListener (new KeyAdapter()
JLabel lblEdad = new JLabel("Edad: ");
public void keyPressed (KeyEvent e)
{
}
if(e.getKeyCode() == KeyEvent.VK_ENTER)
txtEdad.requestFocus();
Los components no se agregan
directamente con add( ), se
agregan a un container virtual
Podemos modificar la fuente
de los objetos de texto tanto
en las etiquetas como en las
cajas de texto
Gestionamos el evento de esta caja
de texto. En este caso hacemos que
cuando se pulse ENTER el foco
avance a la siguiente caja de texto.
Documento realizado por la alumna Marta Galán
txtEdad = new JTextField (10);
txtEdad.setBackground (Color.BLACK);
txtEdad.setForeground (Color.YELLOW);
txtEdad.setHorizontalAlignment(JTextField.CENTER);
txtEdad.addKeyListener (new KeyAdapter()
public void keyPressed (KeyEvent e)
{
if(e.getKeyCode() == KeyEvent.VK_ENTER)
{
{
También podemos cambiar el color de
fondo de la caja de texto así como el
color del texto que en ella escribamos. Si
queremos también podemos hacer que el
texto quede centrado o justificado a
izquierda o derecha. En este caso
quedaría de la siguiente forma:
15
Al pulsar ENTER podemos realizar cualquiera de las siguientes acciones
(teniendo en cuenta que se trata de la última caja de texto lo lógico es que al
pulsar ENTER sobre la caja de texto el resultado se el mismo que el que
obtendríamos al pulsar el botón GUARDAR):
// Almacenar la ocurrencia creada en un ArrayList
Para ello recogemos el contenido de las cajas de texto:
String nombre = txtNombre.getText();
int edad = Integer.parseInt(txtEdad.getText());
ar.add(new Persona(nombre, edad));
// Limpiamos las cajas de texto
txtNombre.setText("");
txtEdad.setText("");
// Asignamos el foco a la primera caja de texto
txtNombre.requestFocus();
}
}
});
JPanel pnlCentro = new JPanel();
pnlCentro.setLayout(new GridLayout(2,2));
pnlCentro.add (lblNombre);
pnlCentro.add (txtNombre);
pnlCentro.add (lblEdad);
pnlCentro.add (txtEdad);
c.add (pnlCentro, BorderLayout.CENTER);
btnGuardar = new JButton("Guardar el objeto");
btnGuardar.addActionListener (new ActionListener()
public void actionPerformed (ActionEvent e)
{
}
btnSalir = new JButton ("Salir de la Aplicación");
btnSalir.addActionListener (new ActionListener()
public void actionPerformed (ActionEvent e)
{
}
Ventana.this.dispose();
System.exit(0);
{
});
{
});
// Almacenamos la ocurrencia creada en un ArrayList
// Limpiamos las cajas de texto
// Asignamos el foco a la primera caja de texto
. . .
. . .
. . .
Creamos un Panel en el que añadiremos todos
los componentes creados hasta ahora
Al pinchar sobre le botón “Salir”
finalizará la aplicación y
cerraremos la ventana
Documento realizado por la alumna Marta Galán
{
});
}
public void windowClosing (WindowEvent e)
{
}
// Finalizamos la aplicación
Ventana.this.dispose();
System.exit(0);
JPanel pnlSur = new JPanel();
pnlSur.setLayout (new FlowLayout());
pnlSur.add (btnGuardar);
pnlSur.add (btnSalir);
c.add (pnlSur, BorderLayout.SOUTH);
this.setTitle(titulo) ;
this.setResizable(false);
this.pack();
this.setVisible(true);
this.addWindowListener(new WindowAdapter()
Ejemplo de Ventana Gráfica utilizando Applet (Gestión de Eventos)
import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.Container;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class Ventana extends JApplet
{
}
// Declaración de variables
private JTextField txtNombre;
private JTextField txtEdad;
private JButton btnGuardar;
private JButton btnSalir;
public void init()
{
Container c = this.getContentPane();
c.setLayout(new BorderLayout());
A partir de aquí el diseño de la ventana sería igual que antes. Sin embargo, tenemos que tener en
cuenta una novedad:
getParameter(String parametro) devuelve como resultado una cadena de caracteres.
• Un applet puede recibir parámetros a través de la etiqueta <PARAM>.
• El método getParameter(String parametro) es el encargado de recoger estos parámetros.
•
String nombre = getParameter("nombre");
Int edad = Integer.parseInt(getParameter("edad"));
Un ejemplo de utilización de parámetros sería el siguiente:
}
Cuando trabajamos con Applets el método main (String []) pasa a
ser ahora el método init ( ). Las clases y constructores deberán
ser públicas. El tamaño del frame se asigna ahora a través de la
página HTML. Por este motivo desaparecen los métodos de
asignación de tamaño (setSize( )) o ajuste (pack( )).
Documento realizado por la alumna Marta Galán
El código HTML sería el siguiente:
Título de la Ventana
<TITLE>
</TITLE>
Ejemplo Applet
<HEAD>
</HEAD>
<BODY>
Salto de línea
</BODY>
<HTML>
</HTML>
Cabecera dentro de la página HTML
<CENTER>
<H1> Ejemplo Applet </H1>
<BR/>
<APPLET code = "Ventana.class" width = "320" height = "100">
</APPLET>
</CENTER>
<PARAM name = "nombre" value = "Marta"/>
<PARAM name = "edad" value = "21"/>
Tamaño del
Frame
Parámetros
Otros Componentes para usar en Ventanas Gráficas
• Ejemplo JCheckBox
import javax.swing.JCheckBox;
Container c = this.getContentPane();
JCheckBox chb = new JCheckBox("Estudiante");
c.add(chb);
Gestión de Eventos:
chb.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
if(chb.isSelected())
mostrarMensaje("Check Activado", INFO);
}
});
Documento realizado por la alumna Marta Galán
• Ejemplo JRadioButton
import javax.swing.JRadioButton;
import javax.swing.ButtonGroup;
ButtonGroup grupo = new ButtonGroup();
rb1 = new JRadioButton("Hombre");
rb1.setSelected(true);
// Otra forma: rb1 = new JRadioButton("Hombre", true);
rb2 = new JRadioButton("Mujer");
// Otra forma: rb2 = new JRadioButton("Mujer", false);
grupo.add(rb1);
grupo.add(rb2);
JPanel pnlRadioBtn = new JPanel();
pnlRadioBtn.add(rb1);
pnlRadioBtn.add(rb2);
• Ejemplo JOptionPane
Para Gestionar los Eventos del JRadioButton anterior utilizaremos un ejemplo de
JOptionPane (clase utilizada para crear cualquier tipo de dialogo estándar para
mostrar o recoger información).
Relación (Tipo de diálogo – Método estático):
• Diálogo de Confirmación (Si/No/Cancelar) – showConfirmDialog
• Diálogo de Entrada - showInputDialog
• Diálogo de Mensaje - showMessageDialog
• Dialogo Persona
Comentarios de: Resumen JAVA Swing - Applets (0)
No hay comentarios