Вы находитесь на странице: 1из 17

EJEMPLO 1: APLICACIN AL ESTILO MDI

A continuacin se desarrollar una aplicacin que utiliza algunos de estos controles:


1. Ingrese a NetBeans
2. Una vez en el IDE seleccione Archivo (File) en el men principal y ah Proyecto nuevo (New
Proyect) o presione conjuntamente las teclas [Ctrl] + [Maysculas] + [N] para crear un
proyecto NetBeans

3. Cree un proyecto nuevo de tipo Aplicacin Java (Java Application), tal como se muestra en
la siguiente figura.

4. Pulse el botn Siguiente (Next) y en la pantalla post siguiente nombre al proyecto como
dskCapitulo4, y seleccione la ubicacin del proyecto en una ubicacin conocida dando clic
en Navegar (Browse). Por ltimo, pulse el botn Terminar (Finish). Con ello se crea una
especie de men inicial.


5. Posteriormente, pulse con el botn derecho del mouse sobre el paquete donde est
guardado el formulario dskCapitulo4 y agregue un nuevo formulario de tipo JFrame y
nmbrelo frmMenu.


6. Una vez creado el formulario debe seleccionar Archivo (File) Propiedades del proyecto
(Proyect Propierties) y en las opciones que aparecen seleccionar Ejecutar (Run) y
seleccionar frmMenu como clase principal (Main Class). Puede pulsar el botn Examinar
(Browse) para buscar el formulario principal de la aplicacin.




7. Establezca el tipo de distribucin que tendrn los objetos en el formulario frmMenu. Pulse
sobre el cuerpo del formulario y pulse el botn derecho del mouse. En el men de
contexto que aparece seleccione la opcin Activar gestor de distribucin (Set Layout) y ah
elija Diseo de borde (Border Layout). Esto permitir dividir la ventana del JFrame en cinco
zonas: norte, sur, este, oeste y centro.

8. Agregue una barra de men, pulse sobre el cuerpo del formulario con el botn derecho
del mouse. Bastar con arrastrarlo hasta el cuerpo del JFrame (Formulario).

9. Al principio el formulario presentar slo dos opciones: File y Edit. Podr fcilmente editar
el ttulo de estas opciones pulsando sobre el mismo y modificar el texto que presenta.
Otra forma de editar el texto es pulsando con el botn derecho del mouse sobre la opcin
y seleccionar Editar Texto en el menpu de contexto que aparece. Cambie File por el texto
Formulario y Edit por Salir.

10. Pulse sobre el cuerpo del formulario y agregue un objeto Panel de Escritorio
(JDesktopPane) al mismo. Se mostrar una regin oscura debajo del men creado.
JDesktopPane se utiliza en NetBeans para contener otros objetos de tipo ventana como puede ser
un JInternalFrame, es una aplicacin MDI (Multiple Document Interface).

11. Cambie el nombre a este panel pulsando sobre el mismo con el botn derecho del mouse
y seleccione la opcin Cambiar Nombre de variable (Change Variable Name) Ponga el
nombre PanelInterno.
12. Habilite el men creado en el formulario frmMenu y pulse con el botn derecho del mouse
sobre l. En el men de contexto que aparece seleccione Aadir de la Paleta (Add From
Palette) la opcin Elemento de men (Menu Item) para agregar un nuevo tem en el men.
En el texto de este tem escriba Mantenimiento de Empleados.

13. Agregue ahora un nuevo formulario (JInternalFrame) de nombre frmMantEmpleados,
dando clic derecho en el paquete donde estn guardados los formularios que hemos
creado. Si no aparece en los objetos actuales vaya al final de las opciones y pulse Otros
(Other) y bsquelo entre los objetos que aparecen ah.







14. A continuacin pulse con el botn derecho del mouse sobre el formulario
(frmMantEmpleados) y en el men de contexto que aparece seleccione Aadir de paleta
Contenedores Swing Panel. Coloque este objeto en la parte superior del formulario.
Coloque otro similar en la segunda mitad de la parte inferior

15. Seleccione el formulario de la primera mitad superior y pulse el botn derecho del mouse,
escoja Propiedades (Properties) y luego pulse sobre la propiedad Borde(Border). Elija
Borde con Ttulo. En el ttulo escriba Datos Generales del Empleado y pulse la tecla ENTER
Haga lo mismo con el panel de la segunda mitad inferior del formulario. En el ttulo de este
otro panel escriba Lista de Empleados.





Este paso tambin se puede hacer desde el men Paleta (Palette) que se encuentra a la derecha
de la pantalla y el men Propiedades (Properties)




Recuerde que la forma de nombrar un objeto es:
Selecciona el objeto a nombrar y da clic derecho sobre l.
Selecciona Cambiar Nombre de la Variable (Change Variable Name) del men contextual.
Nombrar al objeto con el nombre deseado.
Nombrar al objeto con un nombre conocido es til para referirnos a l de forma sencilla cuando
programemos los eventos del formulario.

16. El producto terminado se muestra en la siguiente figura.
Los objetos del formulario frmMantEmpleados
ETIQUETA
NO.
TIPO DE
COMPONENTE
ATRIBUTOS
PRINCIPALES

1 JPanel Ninguno
2 JPanel Ninguno
3 JTextField Name: txtNombre
4 JTextField Name: txtApellidos
5 JComboBox Name: cmbAnyos
6 JLabel Name: lblEdad
7 JRadioButton Name: rdFemenino
8 JRadioButton Name: rdMasculino
9 JCheckBox Name: chkFutbol
10 JCheckBox Name: chkValleyball
11 JCheckBox Name: chkOtro
12 JTextField Name: txtOtro
13 JTable
Name:
lblEmpleados
14 JButton Name: btnAgregar
15 JButton Name: btnModificar
16 JButton Name: btnEliminar
17 JButton Name: btnCerrar




3
4
5
6
7
8
9 10 11
12
13
14 15
16 17
1
2
17. Ahora corresponde programar los objetos del formulario, inclusive este.
En primer lugar debemos ingresar un JInternalFrame dentro del formulario frmMenu, damos clic al
formulario (seleccionamos algn elemento del formulario) y en la ventana de Navegacin
(Navigator) que se encuentra debajo de la ventana Proyectos (Projects) o si no en el men
Ventana (Window) seleccionando la ventana correspondiente.


Damos clic derecho sobre Otros componentes (Other Components) Agregar de la paleta (Add
From Palette) Swing Containers Internal Frame.

Dentro del formulario nos vamos a su cdigo fuente dando clic en Source de la barra de
herramientas de Editor (Editor ToolBar) si no est damos clic en el men ver (View) seleccionamos
Show Editor ToolBar. En el constructor del formulario ingresamos el siguiente cdigo
public frmMenu() {
initComponents();
this.setVisible(true);
this.setExtendedState(6);
}





18. Pasaremos a programar el tem Mantenimiento de Empleados del men Formulario de la
barra de men (MenuBar) del mismo formulario con el que estamos trabajando
(frmMenu). Solo abrimos el tem mencionado dando clic al la opcin Formularios y damos
clic derecho sobre dicho tem, seleccionamos Eventos (Events) Action ActionPerformed.

Nos mandar al cdigo de dicho elemento, escribimos el siguiente cdigo.
frmMantEmpleados frm = new frmMantEmpleados();
PanelInterno.add(frm);
frm.setVisible(true);

19. Ahora toca programar el formulario frmMantEmpleados
Ingresamos al cdigo fuente del formulario y escribimos las siguientes variables en el inicio de la
clase.
private int anyoActual, fila;
Object[] filas = new Object[6];
javax.swing.table.DefaultTableModel modeloTabla = new
javax.swing.table.DefaultTableModel();

20. Procedemos a programar el evento inicializador de nuestro formulario con los
procedimientos que se ejecutarn cuando ste se cargue.
public frmMantEmpleados() {
initComponents();
CargarAnyos();
configurarModelo();
detEdad();
modeloTabla.addRow(filas);
lblEmpleados.setModel(modeloTabla);
}

21. Ahora programamos el mtodo CargarAnyos() con el siguiente cdigo.
void CargarAnyos(){
int i;
javax.swing.DefaultComboBoxModel modeloCombo = new
javax.swing.DefaultComboBoxModel();
java.util.Calendar fecha = java.util.Calendar.getInstance();
anyoActual = fecha.get(java.util.Calendar.YEAR);
for (i=1950;i<anyoActual;i++) {
modeloCombo.addElement(i);
}
cmbAnyos.setModel(modeloCombo);
}

22. El mtodo configurarModelo() con el siguiente cdigo.
void configurarModelo(){
modeloTabla.addColumn("Nombre");
modeloTabla.addColumn("Apellidos");
modeloTabla.addColumn("Ao");
modeloTabla.addColumn("Edad");
modeloTabla.addColumn("Sexo");
modeloTabla.addColumn("Areas");
}
23. El mtodo detEdad() permite determinar la edad del empleado. El cdigo es el siguiente:
void detEdad(){
int edad = anyoActual -
Integer.parseInt(cmbAnyos.getSelectedItem().toString());
lblEdad.setText(String.valueOf(edad));
}

24. Una vez escritos los mtodo anteriores, pulse con el botn derecho del mouse sobre el
objeto cmbAnyos y seleccione las opciones Eventos (Events) Item ItemStateChanged.
Ah haga un llamado al mtodo detEdad().

private void cmbAnyosItemStateChanged(java.awt.event.ItemEvent evt)
{
detEdad();
}

25. Seleccione el botn agregar y de doble clic sobre l, esto lo llevar al mtodo del botn,
ah escriba el siguiente cdigo.
detDatos();
modeloTabla.addRow(filas);
lblEmpleados.setModel(modeloTabla);

26. Observe que el procedimiento detDatos() an no ha sido definido. Por tanto, escriba el
cdigo para ese procedimiento como sigue:
void detDatos(){
String AInteres="";
filas[0] = txtNombre.getText();
filas[1] = txtApellidos.getText();
filas[2] = cmbAnyos.getSelectedItem().toString();
filas[3] = lblEdad.getText();
if (rdMasculino.isSelected()){
filas[4] = "Masculino";
}
else{
filas[4] = "Femenino";
}
if (chkFutbol.isSelected()) AInteres=chkFutbol.getText() + ", ";
if (chkValleyball.isSelected()) AInteres = AInteres +
chkValleyball.getText()+ ", ";
if (chkOtro.isSelected()) AInteres = AInteres +
txtOtro.getText();
filas[5] = AInteres;
}

27. En el botn Modificar (btnModificar) escriba el siguiente cdigo:
detDatos();
for (int i=0;i<6;i++)
modeloTabla.setValueAt (filas[i], fila, i);
tabEmpleados.setModel(modeloTabla);

28. En el botn Eliminar (btnEliminar) escriba el siguiente cdigo:
modeloTabla.removeRow(fila);
tabEmpleados.setModel(modeloTabla);

29. Pulse con el botn derecho del mouse sobre la tabla del panel de abajo y asegurese de
seleccionar Events (Events) Mouse MouseClicked, esto lo llevara al cdigo de este
evento, ah escriba el siguiente cdigo.

fila =
lblEmpleados.rowAtPoint(evt.getPoint());
Con ello se selecciona el nmero de fila donde el
usuario dio clic.
30. Finalmente se enlazan los objetos JRadioButton para que, si seleccion masculino, no
pueda seleccionarse femenino y viceversa. Para estos efectos pulse sobre el formulario
con el botn derecho del mpuse y seleccione Aadir de paleta (Add From Palette)
Controles Swing(Swing Controls) Grupo de botones (Button Group), tambin puedes
agregarlo arrastrando el objeto desde la paleta que se muestra a la derecha de la pantalla.
Se agrega automticamente un grupo de botones que no tendrn visibilidad (es como
crear una variable).

Ahora pulse con el botn derecho del mouse sobre el JRadioButton rdMasculino y en las
propiedades busque el atributo buttonGroupy selecciones el que aparece ah (probablemente ser
buttonGroup1). Con ello se enlaza el radioButton a este grupo de botones. Selecciones tambin la
propiedad Selected habilitando la caja de check que presenta. Con ello se mostrar que este
radioButton inicialmente est seleccionado. Haga la primera parte de enlazar el siguiente
radioButton (rdFemenino) al buttonGroup ambos radioButton estn sincronizados, es decir solo
uno de ellos se podr seleccionar a un mismo tiempo.























Ejecute el ejemplo y podr agregar, modificar y eliminar registros desde la tabla. Observe tambin
que el formulario frmMantEmpleados queda dentro del entorno del formulario de men
(frmMenu). Todos los formularios toman como formulario padre a frmMenu y nuestra aplicacin
tendr un aspecto similar siempre.

Вам также может понравиться