Manual Completo Java PDF
Manual Completo Java PDF
Manual Completo Java PDF
AspectosGenerales
En esta parte de la Unidad Didctica Herramientas de desarrollo de Software, se har una
presentacin y estudio de las interfaces visuales a travs del entorno de desarrollo denominado
NetBeans, es decir, utilizaremos el lenguaje de programacin Visual Java. La asignatura se
encuentra dividida en dos unidades: la primera es Manipulacin de controles, la segunda es
Diseo de formularios y Mens.
En la primera parte se estudiar a los objetos de control bsicos como son JLabel, JTextField,
JButton, JRadioButton, JCheckBox, JList, JComboBox y Jtable; en la segunda parte se tendr en
cuenta el diseo de aplicaciones a partir de casos, lo cual implica el uso de los objetos de control
bsicos estudiados en la primera parte como tambin la construccin o diseo de mens; y en la
tercera se abarcar la construccin o diseo de sistemas de aplicaciones haciendo uso de las
sentencias selectivas, repetitivas y el uso de arreglos como tambin se ver el uso de interfaces
multimedia y paquetes.
A continuacin iniciamos el desarrollo de la asignatura y haciendo una introduccin a la
programacin visual.
Qu esProgramacin Visual?
La programacin visual brinda los conocimientos necesarios para disear y desarrollar aplicaciones
con un entorno visual amigable y fciles de utilizar por el usuario. Los lenguajes de
programacin visual, como Visual Java, hacen sencilla la tarea de los programadores porque antes
constitua una gran demora tiempo en el diseo de ventanas o formularios.
ProgramacinorientadaaObjetos
En el caso del lenguaje de programacin, Java aplica la programacin orientada a objetos (POO). La
POO define a los programas en trminos de clases de objetos, objetos que son entidades que
combinan estado (datos), comportamiento (procedimientos o mtodos) e identidad (propiedad o
atributo del objeto) que lo diferencia de los dems. La POO expresa un programa como un
conjunto de objetos, que colaboran entre ellos para realizar tareas.
Podramos decir que que las caractersticas de los objetos son:
BibliotecasdeClasesenJava
Sabemos que Java es un lenguaje de programacin con un entorno de ejecucin de aplicaciones
como tambin entorno de ejecucin de despliegue de aplicaciones. Es utilizado para desarrollar
applets como aplicaciones.
Ing. Oscar Ascn Valdivia / Enrique Rivas Uriol
Package Lang: compuesta por clases con funcionalidades bsicas, arrays, cadenas de
caracteres, entrada/salidad, excepciones, etc. Este paquete debes haberlo utilizado en el
curso de Fundamentos de Programacin.
Package Util: compuesta por clases para utilizadas como nmeros aleatorios, vectores,
propiedades del sistema, etc.
Package net: compuesta por clases, es usada para la conectividad y trabajo con redes, URL,
etc.
Package Applet: compuesta por clases, es usada para el desarrollo de
aplicaciones ejecutables en navegadores.
Package Awt y Swing: compuesta por clases para el desarrollo de interfaces grficas de
usuario. El paquete swing es el paquete por excelencia para el desarrollo de los temas
del presente curso.
Cualquier programa hecho en Java lleva a definir un archivo de extensin .java. El programa debe
pasar por un proceso de compilacin que consiste en convertir tu programa fuente (el archivo
de extensin .java) en un archivo de extensin .class y conjuntamente con la biblioteca de clases se
logra interpretar lo programado, es as cuando ya se puede ejecutar el programa y ver los resultados
en la pantalla del computador. Para este curso, en el que veremos programacin visual y por lo tanto
el uso de formularios, se crear un archivo adicional con extensin.frm que guardar la
estructura o diseo del formulario.
Veamos a continuacin el entorno de desarrollo NetBeans, el cual ya conoces, pero del que vale la
pena reforzar algunas afirmaciones necesarias para el curso.
NetBeans IDE en la programacin visual
El NetBeans es un entorno de desarrollo integrado que permite crear aplicaciones de escritorio,
aplicaciones web y aplicaciones mviles utilizando las ltimas tecnologas para los desarrolladores
de software de Java. El IDE de NetBeans es un producto gratuito y sin restricciones de uso pudiendo
escribir, compilar, depurar e implementar programas en Java. NetBeans es un proyecto open source
de desarrollo escrito en Java. La plataforma NetBeans da soporte para escritura de servlets, ayuda
Ing. Oscar Ascn Valdivia / Enrique Rivas Uriol
Para dar inicio a una aplicacin de Java bajo el entorno de Netbeans se debe definir un proyecto,
para ello, seleccionas la opcin del men denominada File. Se muestra inmediatamente un men
flotante cuya primera opcin indica New Proyect, est opcin la seleccionas.
Dado que nuestras aplicaciones van ser desarrolladas en entorno visual en Categories seleccionas la
carpeta Java y en Proyects seleccionas Java Application. Luego hacer click en el botn de comando
Next que mostrar la siguiente ventana:
Es conveniente que uno mismo cree su carpeta de destino de los archivos que se generan
para la construccin de una aplicacin. Supongamos que la carpetas que necesitamos crear se llama
Ejercicios y la creamos en la unidad E, para ello es necesario dar click en el botn de comando
Browse.
Una vez indicada la nueva carpeta Ejercicios, procede a dar click en el botn de comando
Abrir quedando la ventana New Java Application de la siguiente forma:
Se observa que en Proyect Location se muestra la carpeta destino del proyecto. Vamos a suponer
que se quiere construir un programa que calcule el promedio de dos notas, entonces la ventana
debera quedar de la siguiente forma:
Al dar click en Finish se mostrar el entorno de desarrollo de NetBeans listo para dar inicio a
la construccin de la aplicacin.
Cuando se pretenda construir una aplicacin de entorno visual tendramos que usar plantillas
que el mismo NetBeans IDE te ofrece. Ahora, seleccionemos el paquete ejercicios y luego elijamos
la opcin New y a continuacin seleccionemos JFrameForm
Una vez seleccionada la opcin JframeForm se muestra la ventana New Jframe Form
para definir el nombre de clase.
Al dar click en el botn de comando Finish se mostrar el entorno de desarrollo de NetBeans listo
para dar inicio al diseo de un formulario y por lo tanto dar comienzo a una aplicacin en un
entorno visual.
ObjetodecontrolJLabel
Un objeto de control Jlabel permite dibujar en el formulario una etiqueta, entendindose como
etiqueta una expresin esttica que se quiere colocar. Tambin es usado para mostrar los resultados
de un proceso.
Propiedades ms usadas:
ObjetodecontrolJTextField
Un objeto de control JTextField permite dibujar en el formulario un cuadro de texto, es decir,
una caja que permite la introduccin de un dato o valor. Este objeto es utilizado para el ingreso de
datos.
Propiedades ms usadas:
Mtodos ms usados:
ObjetodecontrolJButton
Un objeto de control JButton permite dibujar en el formulario un objeto que contiene un proceso a
ejecutar. Se utiliza comnmente para llevar a cabo procesos especficos segn la naturaleza de la
aplicacin.
Propiedades ms usadas:
Evento ms usado:
ActionPerformed: Este evento se lleva a cabo cuando el usuario da click sobre el objeto
de control JButton.
Seleccionamos el paquete ejercicios y damos click botn derecho del mouse y eligimos
la opcin New y posteriormente JframeForm.
10
Se muestra la ventana New JFrame Form y colocamos en Class Name el nombre del
formulario: frmAreaTriangulo.
11
Sobre el diseo del formulario damos click botn derecho y seleccionamos Set
Layout y posteriormente AbsoluteLayout.
Es necesario usar AbsoluteLayout para que permita dibujar los objetos de control en el
lugar donde uno quiere en el formulario.
12
Ahora procedamos a usar a cambiar los valores de las propiedades de los objetos de control
en la ventana de propiedades:
Objeto de Control
Propiedad
Valor de la Propiedad
JLabel1
Text
BASE:
JLabel2
Text
ALTURA:
JLabel3
Text
JTextField1
Text
(Vaco o limpiar)
JTextField2
Text
(Vaco o limpiar)
JTextField3
Text
(Vaco o limpiar)
JButton1
Text
CALCULAR
JButton2
Text
LIMPIAR
JButton3
Text
CERRAR
Luego de aplicar los cambios en los valores de propiedades el diseo del formulario debe
quedar de la siguiente manera:
13
14
Nombre
JTextField2
txtAltura
JTextField3
txtArea
JButton1
btnCalcular
JButton2
btnLimpiar
JButton3
btnCerrar
Una vez declaradas las variables de memoria, a la variable base se le asigna el valor
introducido en el cuadro de texto txtBase. El mtodo getText() permite obtener el dato
introducido y con el mtodo parseInt de la clase Integer es convertido a numrico entero. Se
hace lo mismo para la variable altura. Para mostrar el clculo de rea se utiliza el mtodo
setText del cuadro de texto txtArea que permite visualizar el contenido de la variable area.
A la variable se le aplica el mtodo valueOf de la clase String para convertir el dato rea en
cadena de caracteres.
Ing. Oscar Ascn Valdivia
15
Se limpian los cuadros de textos a travs del mtodo setText() y con el mtodo
requestFocus() se pasa el cursor al objeto de control txtArea.
En el botn CERRAR (btnCerrar) luego de darle doble click, escribimos el siguiente cdigo:
(lo escrito en azul)
private void btnCerrarActionPerformed(java.awt.event.ActionEvent evt)
{
dispose();
}
16
Podemos observar que el formulario sale con los objetos de control cercano a los bordes del
formulario y el mismo formulario se visualiza pegado en la parte superior izquierda de la
pantalla del computador. Vamos a proceder a corregir estos defectos agregando dos
lneas de cdigo en el mtodo constructor de la clase frmAreaTriangulo. (escribe lo que est
en azul)
public class frmAreaTriangulo extends javax.swing.JFrame
{
/** Creates new form frmAreaTriangulo */
public frmAreaTriangulo()
{
initComponents();
setSize(400,250);
setLocation(250,250);
}
17
Le ponemos nombres a las objetos de control y sobre todo a aquello que intervienen en la lgica de la
programacin.
18
Nombre
JTextField2
txtNotaFinal
JTextField3
txtNotaPromocional
JButton1
btnCalcular
JButton2
btnLimpiar
JButton3
bntCerrar
Ahoraprocedamosaprogramarenlosbotonesdecomando(Ventanadeedicindecdigo)
En el botn CALCULAR (btnCalcular) al darle doble click y escribir el siguiente cdigo: (lo escrito en azul)
private void btnCalcularActionPerformed(java.awt.event.ActionEvent evt)
{
int NotaParcial, NotaFinal;
double NotaPromocional;
NotaParcial=Integer.parseInt(txtNotaParcial.getText());
NotaFinal=Integer.parseInt(txtNotaFinal.getText());
NotaPromocional=(NotaParcial + NotaFinal)/2;
txtNotaPromocional.setText(String.valueOf(NotaPromocional));
}
Una vez declaradas las variables de memoria, a la variable NotaParcial se le asigna el valor introducido en el
cuadro de texto txtNotaParcial. El mtodo getText() permite obtener el dato introducido y con el mtodo
parseInt de la clase Integer es convertido a numrico entero. Se hace lo mismo para la variable NotaFinal.
Para mostrar el valor del clculo de la nota promedio se utiliza el mtodo setText del cuadro de texto
txtNotaPromocional que permite visualizar el contenido de la variable NotaPromocionail. A la variable se
le aplica el mtodo valueOf de la clase String para convertir el dato rea en cadena de caracteres.
En el botn LIMPIAR (btnLimpiar) luego de darle doble click escribimos el siguiente cdigo: (lo escrito
en azul).
private void btnLimpiarActionPerformed(java.awt.event.ActionEvent evt)
{
txtNotaParcial.setText("");
txtNotaFinal.setText("");
txtNotaPromocional.setText("");
txtNotaParcial.requestFocus();
}
Se limpian los cuadros de textos a travs del mtodo setText() y con el mtodo requestFocus() se pasa el
cursor al objeto de control txtNotaParcial.
En el botn CERRAR (btnCerrar) luego de darle doble click, escribimos el siguiente cdigo: (lo escrito
en azul)
private void btnCerrarActionPerformed(java.awt.event.ActionEvent evt)
{
dispose();
}
El mtodo dispose() permite descargar el formulario y terminar la ejecucin de la aplicacin.
Ing. Oscar Ascn Valdivia
19
TAREA N 1
1. Se desea construir una aplicacin que permita ingresar una cantidad de camisas a comprar a
una distribuidora indicando el costo unitario y la tasa de descuento, para luego mostrar el costo
total, el igv(18% del costo total) y el mosto a pagar (costo total ms el igv). El diseo del
formulario es el siguiente:
2. Se desea construir una aplicacin que permita el ingreso del costo de una computadora. si el
costo del artefacto vale menos de 500 soles se aplica un descuento del 4% sobre dicho costo, si
el costo es mayor e igual a 500 y menor e igual a 1200 la tasa de descuento es de 6% sobre el
costo y si supera a 1200 el descuento es del 8%. Calcular el descuento, el impuesto del igv
(19%) y el precio a pagar por la computadora. El diseo del formulario es el siguiente:
3.
Elabora una aplicacin que permita el ingreso de una cantidad de pulgada y muestre su
equivalencia en pies, en yardas, en metros y en centmetros. Se sabe que un pie equivale a 12
pulgadas, una yarda equivale a 3 pies, una pulgada a 2.52 centmetros y un metro a 100
centmetros. Propone t mismo el diseo del formulario.
4. Elabora una aplicacin que permita el ingreso de dos nmeros y muestre el doble del nmero
mayor y el cuadrado del nmero menor. Propone t mismo el diseo del formulario.
Ing. Oscar Ascn Valdivia
20
5.
6.
Implementar una aplicacin que permita acumular las ventas de los pasajes Vendidos a los clientes de
una determinada empresa.
Implementar una aplicacin que permita calcular el importe de llamadas Nacionales y Extranjeras y el
total a pagar (PN + PE).
7. Implementar una aplicacin que permita Calcular el sub total y contar el nmero de ventas de una
determinada empresa.
21
JOptionPane
Introduccin
Un dilogo es una ventana independiente tambin llamada subventana que pretende mostrar un
aviso temporal al margen de la ventana de la aplicacin principal de Swing. Los Dilogos ms
comunes son mostrar un mensaje de error o de advertencia a un usuario.
Libreria
JOptionPane facilita el mostrar una ventana emergente en Java o tambin se usa para pedir un
valor a los usuarios o informarles de algo.
Para hacer uso de la herramienta JOptionPane se debe de importar la siguiente libreria:
javax.swing.JOptionPane;
Metodos Basicos de JOptionPane
JOptionPane cuenta con estos cuatro mtodos bsicos para su manejo y uso aunque existen
muchos ms solo haremos nfasis en los siguientes:
showOptionDialog();
showInputDialog();
showMessageDialog();
showConfirmDialog();
showOptionDialog
Tenemos un mtodo JOptionPane.showOptionDialog() que nos muestra la ventana ms
configurable de todas, en ella debemos definir todos los botones que lleva. De hecho, las
dems ventanas disponibles con JOptionPane se construyen a partir de esta. Por ello, al
mtodo debemos pasarle muchos parmetros:
parentComponent: A partir de este componente, se intentar determinar cul es la ventana
que debe hacer de padre del JOptionPane. Se puede pasar null, pero conviene pasar, por
ejemplo, el botn desde el cual se lanza la accin que provoca que se visualice el
JOptionPane. De esta manera, la ventana de aviso se visualizar sobre el botn y no se podr
ir detrs del mismo si hacemos click en otro sitio.
message: El mensaje a mostrar, habitualmente un String
title: El ttulo para la ventana.
optionType: Un entero indicando qu opciones queremos que tenga la ventana. Los posibles
valores son las constantes definidas en JOptionPane: DEFAULT_OPTION,
YES_NO_OPTION, YES_NO_CANCEL_OPTION, o OK_CANCEL_OPTION.
22
messageType: Un entero para indicar qu tipo de mensaje estamos mostrando. Este tipo
servir para que se determine qu icono mostrar. Los posibles valores son constantes definidas
en JOptionPane: ERROR_MESSAGE, INFORMATION_MESSAGE, WARNING_MESSAGE,
QUESTION_MESSAGE, o PLAIN_MESSAGE
icon: Un icono para mostrar. Si ponemos null, saldr el icono adecuado segn el parmetro
messageType.
options: Un array de objects que determinan las posibles opciones. Si los objetos son
componentes visuales, aparecern tal cual como opciones. Si son String, el JOptionPane
pondr tantos botones como String.Si se pasa null, saldrn los botones por defecto que se
hayan indicado en optionType.
initialValue: Seleccin por defecto. Debe ser uno de los Object que hayamos pasado en el
parmetro options. Se puede pasar null.
La llamada a JOptionPane.showOptionDialog() devuelve un entero que representa la opcin
que ha seleccionado el usuario. La primera de las opciones del array es la posicin cero. Si se
cierra la ventana con la cruz de la esquina superior derecha, el mtodo devolver -1.
Ejemplo
int seleccion = JOptionPane.showOptionDialog( unComponentePadre, "Seleccione opcion",
"Selector de opciones", JOptionPane.QUESTION_MESSAGE, null, new Object[] { "opcion
1", "opcion 2", "opcion 3" }, opcion 1");
showInputDialog();
Tenemos varios mtodos JOptionPane.showInputDialog() y la diferencia entre ellos es que
tienen ms o menos parmetros, segn queramos aceptar o no las opciones por defecto. Los
parmetros y sus significados son muy similares a los del mtodo showOptionDialog(),
23
Ejemplo
String
seleccion
=
JOptionPane.showInputDialog(
JOptionPane.QUESTION_MESSAGE);
null,
"Input
dialog",
showMessageDialog();
Esta es la ms sencilla de todas, slo muestra una ventana de aviso al usuario. La ejecucin se
detiene hasta que el usuario cierra la ventana. Hay varios mtodos con el mismo nombre y ms
o menos parmetros, en funcin de si aceptamos las opciones por defecto (icono, por ejemplo)
o queremos cambiar alguna cosa.
Los iconos usados del JOptionPane son los siguientes y son los que recibe como parametro la
mayoria de los metodos que necesitan un icono de mensaje
Ejemplo
JOptionPane.showMessageDialog(null,
"Hola
JOptionPane.INFORMATION_MESSAGE);
Mundo",
"Lo
de
siempre",
24
showConfirmDialog();
Este mtodo muestra una ventana pidiendo una confirmacin al usuario y da al usuario opcin de
aceptar o cancelar.El mtodo devuelve un entero indicando la respuesta del usuario. Los valores de
ese entero puede ser alguna de las constantes definidas en JOptionPane: YES_OPTION,
NO_OPTION, CANCEL_OPTION, OK_OPTION, CLOSED_OPTION
Ejemplo
int
confirmado
=
JOptionPane.showConfirmDialog(
confirmas?,JOptionPane.QUESTION_MESSAGE);
null,
"Lo
25
ObjetodeControlJRadioButton
Un objeto de control JRadioButton permite dibujar en el formulario una opcin que puede ser
seleccionada, es decir, es un objeto que define una opcin o alternativa para ser elegida. Este objeto
debe mostrarse ms de una vez en el diseo del formulario para que exista la alternativa de
seleccionar una opcin de un grupo de opciones. Los objetos son mutuamente excluyentes con
respeto a la seleccin. Se tiene la siguiente figura:
En la figura anterior se observan tres objetos JRadioButton y para poder seleccionar sola una
alternativa se tendr que usar el objeto ButtonGroup que es un elemento que no se llega a dibujar
en el formulario pero permite agrupar objetos JRadioButton y una vez agrupados permite la
seleccin de una opcin cuando la aplicacin se encuentre en ejecucin. En las dos aplicaciones que
veremos ms adelante se har hincapi en este asunto.
Propiedades ms usadas:
Mtodo ms usado:
ObjetodeControl JCheckBox
Un objeto de control JCheckBox permite dibujar en el formulario una opcin que puede ser
seleccionada, es decir, es un objeto que define una opcin o alternativa para ser elegida. La
diferencia con respecto al objeto de control JRadioButton es que si se tienen dos o ms objetos
JCheckBox se puede seleccionar ms de una opcin o simplemente no seleccionar ninguna, por lo
que no son mutuamente excluyentes. Se tiene la siguiente figura:
26
En la figura anterior se observa un objeto JCheckBox que expresa como opcin Contado, si es
seleccionado significa que la forma de pago es al contado y si se deja como no seleccionado
significa que la forma de pago no es al contado por lo que se puede asumir que es al crdito.
Propiedades ms usadas:
Mtodo ms usado:
isSelected(): retorna el valor de verdadero si el objeto se encuentra seleccionado y falso en
caso contrario.
Aplicacin1
Vamos a construir una aplicacin en entorno visual que permita ingresar del costo de un artefacto,
del tipo de artefacto y la forma de pago, para calcular lo siguiente:
a. Si el pago es al contado hay un descuento del 6% del costo del artefacto si el tipo de
artefacto es Audio, 8% si es Video y 5% si es Lnea Blanca.
b. Si el pago es al crdito hay un incremento del 7% sobre el costo del artefacto si es el tipo de
artefacto es Audio, 9% si es Video y 10% si es Lnea Blanca.
c. El monto del IGV es del 19% sobre el costo del artefacto luego de aplicar el descuento o
el incremento.
d. El monto a pagar que es el costo del artefacto (descontado o incrementado) ms el monto del
IGV.
Solucin:
27
Seleccionamos la carpeta de ejemplos, damos click con el botn derecho del mouse y
elegimos la opcin New y posteriormente JframeForm.
28
29
Lo mismo hacemos para los tipos de artefactos Video y Lnea Blanca. Por lo tanto, los tres
objetos JRadioButton deben pertenecer a buttongroup1. Si pretendemos en estos
momentos ejecutar el formulario podremos seleccionar uno de los tres tipos de artefactos.
A continuacin, agregamos un objeto JCheckBox para indicar la forma de pago que solo
puede ser de dos posibilidades: Contado o Crdito. Seleccionado significa al Contado, no
seleccionado significa al crdito. Agregamos los dems objetos de control que se visualiza
en el diseo del formulario y que fueron estudiados en la sesin anterior. En el diseo del
formulario se indica los nombres de los objetos y debemos recordar que para asignar un
nombre a un objeto de control hay que seleccionar al objeto y dando click con el botn
30
31
Una vez declaradas las variables de memoria, en la variable costo se asigna el valor
introducido en el cuadro de texto txtCosto gracias al mtodo getText() que logra obtener el
dato colocado en el objeto de control. Con la sentencia if se evala si est seleccionada la
opcin al contado y, si es as, se procede a evaluar cul de los tipos de artefactos est
seleccionado para aplicar el clculo del descuento que ser asignando a la variable de
memoria dcto. En caso que no est seleccionada la opcin al Contado entonces se asume
que la forma de pago es al crdito y se procede a evaluar cul de los tipos de artefactos est
seleccionado para aplicar el clculo del incremento que ser asignado a la variable incre. A
continuacin, se calcula el IGV y el monto a pagar. Luego, los objetos de control txtDcto,
txtIncre, txtIgv y txtMPagar reciben valores a travs de las variables de memoria dcto,
incre, igv y mpagar en sus cuadros de textos gracias al mtodo setText(), por supuesto
previamente se tiene que convertir a cadena de texto los valores numricos de las variables
usando el mtodo valueOf() de la clase String.
En el botn de comando BORRAR (btnBorrar), luego de darle doble click, escribimos el
siguiente cdigo: (lo escrito en azul)
private void btnBorrarActionPerformed(java.awt.event.ActionEvent evt)
{
txtCosto.setText();
txtDcto.setText();
txtIncre.setText(); txtIgv.setText();
txtMPagar.setText();
rbAudio.setSelected(false);
rbVideo.setSelected(false);
rbLinea.setSelected(false);
chkContado.setSelected(false);
txtCosto.requestFocus();
}
Se limpian los cuadros de textos con slo poner en el mtodo setText() y a los objetos
botn de radio (JRadioButton) y el objeto de caja verificacin (JCheckBox) se les aplica el
mtodo setSelected() para lograr quitar la seleccin de estos objetos. Lo ms importante
es que los cuadros de textos estn limpios para poder permitir el ingreso de nuevos datos.
En el botn de comando CERRAR (btnCerrar), luego de darle doble click, escribimos el
siguiente cdigo: (lo escrito en azul)
private void btnCerrarActionPerformed(java.awt.event.ActionEvent evt)
{
dispose();
}
32
Tarea N 2
1. Disear e implementar el siguiente formulario que permite calcular el descuento de afiliacin, utilizando
controles RadioButton
2. Disear e implementar el siguiente formulario, utilizando controles CheckBox, que permita calcular diversos
descuentos.
3. Desarrollar el siguiente ejercicio (Afiliacin: AFP=11%, ONP=15%) (Descuentos: Judicial =5%, Prstamo
=10, Alimentos =8%)
33
USODELOBJETO JLIST
Objeto de ControlJList
Un objeto de control Jlist permite dibujar en el formulario una caja de lista de opciones (tems).
Cuando el formulario se encuentra en la etapa de ejecucin se pueden seleccionar sus tems.
Pero para trabajar con este objeto es necesario usar un objeto de la categora de Swing Containers
denominado JScrollPane. El objeto JScrollPane permite hacer que el objeto JList tenga barra de
desplazamiento que es necesaria cuando el nmero de tems es grande y no puede ser visto a
simple vista en el objeto de control JList. Cabe sealar que los objetos que pertenecen a Swing
Containers sern estudiados con mayor detalle en la segunda unidad de aprendizaje del curso, pero
el uso de Jlist nos obliga utilizar el objeto contenedor JScrollPane.
Propiedades ms usadas:
Model: Permite establecer los tems de la caja de lista.
Mtodos ms usados:
setModel(): Permite vincular una variable objeto de tipo model a un objeto de control
JList.
getSelectedValue(): Contiene el tem seleccionado de la caja de lista.
34
getSelectedIndex(): Contiene el valor del ndice activo o ndice actual del tem
seleccionado de la caja de lista. El ndice es un valor numrico correlativo no visible que va
desde 0.
Evento ms usado:
Aplicacin
Construir una aplicacin que permita el ingreso del nombre del alumno y poder seleccionar
uno o varios cursos que ste quisiera llevar. El pago por los cursos seleccionados podr ser pagado
al contado o al crdito. Si el pago es al contado hay un descuento del 5% del costo total de los
cursos a llevar y si el pago es al crdito se pagar un incremento del 7% del costo total. La
aplicacin debe mostrar el descuento, el incremento y el monto a pagar por los seleccionados.
Solucin:
35
Seleccionamos el paquete de aplicaciones y al dar click con el botn derecho del mouse
elegimos la opcin New y luego JFrameForm.
A continuacin se muestra la ventana New Jframe Form que debe quedar as:
36
No olvidemos de dar click botn derecho del mouse sobre el formulario y establecer
AbsoluteLayout en Set Layout.
37
38
39
Ingresamos los nombres de los cursos tal como se muestra en la siguiente ventana:
40
Luego vamos a colocar en el diseo del formulario otro objeto JScrollPane junto a JList1
para luego poner un objeto JList. En esta lista colocaremos los costos de cada curso.
41
Posteriormente agregamos las formas de pago con dos objetos JRadioButton, los botones de
comando Calcular, Limpiar y Cerrar. Finalmente, los objetos que mostrarn el descuento, el
incremento y el monto a pagar por los cursos seleccionados. El diseo del formulario debe
quedar as:
Ahora bien, si observamos en el diseo del formulario de las cuatros objetos Jlist, dos de
ellos ya tienen tems como lo son lstCursos y lstCostos. En cambio, los objetos lstCursel y
lstCos se llenarn en funcin a lo seleccionado y agregado con el botn de comando
Agregar. Por lo tanto, debemos definir un modelo (model) para aquellas listas que se
llenarn en tiempo de ejecucin. Por esto debemos definir las variables modelo1 y modelo2
como DefaultListModel(), como se muestra a continuacin (escribe lo que indica las flechas
de color rojo):
42
Una vez definidas las variables modelo1 y modelo2, en el mtodo constructor se debe
indicar que la variable modelo1 es para la caja de lista lstCursel y la variable modelo2 es
para la caja de lista lstCos, todo esto se podr hacer con el mtodo setModel(). Tambin
hacemos que los botones de comando Agregar y Eliminar se inhabiliten desde la ejecucin
de la aplicacin.
Bien, ahora debemos programar sobre el objeto lsrCursos, para que el usuario al momento de
seleccionar un curso se marque simultneamente el costo y se habilite el botn de
comando Agregar. Para esto se debe seleccionar un evento de la caja de lista lstCursos
llamado ValueChanged perteneciente a ListSelection.
43
Se declara una variable entera llamada ndice, esta variable recibe el valor del ndice
del tem seleccionado gracias al mtodo getSelectedIndex(). Por ejemplo, si de la caja de
lista lstCursos estuviera seleccionado Power Builder, ste mtodo devolvera el valor de 1.
El valor 0 lo tiene Visual Basic, el valor de 2 lo tiene Visual Java y as sucesivamente. Lo
que se quiere es seleccionar el tem de la caja de lista de lstCostos que tenga el mismo
ndice que lstCursos, para ello se usa el mtodo setSelectedIndex(indice) para dar el
mismo ndice a la caja de lista lstCostos. Finalmente, hacemos que el botn de comando
Agregar se habilite con el mtodo setEnabled().
Aqu declaramos dos variables de tipo String llamados curso y costo y las variables
enteras cuenta, i y total. En la variable curso se almacena el curso seleccionado en la lista
lstCursos, el mtodo getSelectionValue() trae consigo el tem seleccionado pero lo trae
como objeto y al poner (String) hacemos que se convierta en cadena para que pueda ser
asignada a la variable curso. De igual manera se hace con la variable costo. Para agregar un
tem a una caja de lista se usa el mtodo addElement perteneciente al objeto variable
modelo1 o modelo2. Con la variable cuenta se almacena el total de tems que hay en la caja
de lista lstCos pero a travs de la variable objeto modelo2. Con la sentencia repetitiva for se
busca extraer cada uno de los tems de la caja de lista lstCos e ir sumando en cada
interaccin para poder encontrar el costo total de los cursos seleccionados, para esto usamos
el mtodo elementAt() que devuelve un tem de una caja de lista con slo indicar el valor del
ndice. Finalmente en el objeto txtTotal se visualiza el contenido de la variable total e
inhabilitamos el botn de comando Agregar.
Ahora programamos en la caja de lista lstCursel el evento ValueChanged cuando
querramos seleccionar un curso para luego eliminarlo (slo escribe lo que seala la llave de color
rojo).
44
Lo novedoso de esta programacin es la presencia del mtodo remove() que elimina un tem
de la lista a travs de la variable objeto modelo1 modelo2 dado el valor del ndice. Al
final de la programacin se vuelve a calcular el costo total de los cursos seleccionados y se
inhabilita el botn de comando Eliminar.
45
En esta programacin, la novedad est en que para limpiar totalmente una caja de lista se
hace con el mtodo clear() perteneciente a las variables objeto modelo1 y modelo2, con lo
cual tambin se hace la limpieza a los objetos lstCursel y lstCos. Tambin, hacemos el uso
del mtodo setSelectedIndex() dando el valor de 5, ya que dicho ndice no existe en la caja
de lista, lo que hace que se pierda lo seleccionado.
46
USODELOBJETOJCOMBOBOX
ObjetodeControlJComboBox
Un objeto de control JComboBox permite dibujar en el formulario una lista desplegadle, la cual
contiene opciones (tems). ComboBox significa cuadro combinado porque combina un cuadro de
texto con una caja de lista, es como si fuera un JtextField mezclado o combinado con un Jlist. Tiene
la particularidad de que se debe seleccionar un botn de comando de despliegue y luego seleccionar
la opcin o tem.
Una vez dado clic en el botn de despliegue se muestra las opciones o tems del objeto
Propiedades ms usadas:
47
Mtodos ms usados:
setModel(): Permite vincular una variable objeto de tipo model a un objeto de control
JList.
getItemAt(): Devuelve el tem que est en el ndice que se especifica.
getSelectedIndex(): Contiene el valor del ndice activo o ndice actual del tem
seleccionado de la caja de lista. El ndice es un valor numrico correlativo no visible que va
desde 0.
Evento ms usado:
Aplicacin
Construir una aplicacin que permita el ingreso del nombre del alumno y poder seleccionar
de una lista desplegadle una categora de los cursos. Al momento de seleccionar la categora se
debe mostrar los cursos con sus respectivos costos en las cajas de listas (los JList que se
muestran al lado izquierdo del diseo del formulario). Una vez visualizado los cursos el usuario
puede seleccionar y agregar en las cajas de listas (los Jlist que se muestran al lado derecho del
diseo del formulario) los cursos solicitados por el alumno. El pago por el servicio de enseanza se
establece de la siguiente manera:
Existe un pago por matrcula del 80% del costo total (suma de los costos de los cursos
escogidos) siempre y cuando quiera el alumno llevar un solo curso, 60% del costo total si
lleva dos cursos y 50% del costo total si lleva 3 o ms cursos.
El costo total tiene un descuento del 10% si la forma de pago es al contado y un incremento
del 10% si es al crdito.
Existe un pago mensual cuando la forma de pago es al crdito y es equivalente al costo total
incrementado dividido en 4 cuotas.
Solucin:
48
49
50
Ingresas las categoras de cursos como son: <Seleccionar>, Diseo Grfico, Diseo
Web, Ofimtica, Lenguajes de Programacin y Sistemas Operativos, quedando el diseo
del formulario de la siguiente manera:
Colocars un objeto Jlabel con la expresin Cursos Ofertados y otro objeto Jlabel ubicado
al lado derecho de ste ltimo con la expresin Costo. Aades dos listas debajo de las
expresiones de estos dos ltimos Jlabel, haciendo que los tems sean eliminados o
removidos a travs del uso de la propiedad model. Luego agregas dos botones de
comando que indiquen Agregar y Eliminar. Posteriormente, aades dos objetos Jlabel que
expresen: Cursos Escogidos y Costo y debajo de estos objetos Jlabel agregas dos objetos
JList siendo tambin eliminados o removidos los tem a travs del uso de la propiedad
model.
51
52
Ahora bien, si observamos en el diseo del formulario, los cuatros objetos JList no tienen
tems. Los objetos JList referidos a Cursos Ofertados y Costo (objetos ubicados al lado
izquierdo del diseo del formulario) se llenarn de tems de acuerdo a lo seleccionado
en la lista desplegadle referido a la Categora de Cursos. Los objetos Jlist referidos a Cursos
Escogidos y Costos se llenarn en la medida que se seleccione un curso ofertado y se
agregue con el botn de comando Agregar. Los 4 objetos JList deben tener un modelo
(model) cada uno, para ello debes definir 4 variables: modelo1, modelo2, modelo3 y
modelo4 del tipo DefaultListModel(). Para poder hacer uso de la clase DefaultListModel se
debe hacer uso del paquete javax.swing.*; y debe ser escrito despus del paquete
Aplicaciones.
Una vez definido las 4 variables de memoria del tipo DefaultListModel, en el mtodo
constructor se debe indicar que la variable modelo1 es para la caja de lista lstCurOfer, la
variable modelo2 para la caja de lista lstCostos, la variable modelo3 es para la caja de lista
lstCurEsco y la variable modelo4 es para la caja de lista lstCos. Tambin hacemos que los
botones de comando Agregar y Eliminar se inhabilite su uso desde la ejecucin de la
aplicacin. Adems le indicamos una localizacin dentro de la pantalla y el tamao del
formulario (slo escribe lo que seala la llave de color rojo).
53
En el evento mencionado programa lo siguiente (slo escribe lo que seala la llave de color
rojo):
54
Se declara una variable de memoria llamada indice para que almacene el ndice actual del
tem seleccionado del objeto JComboBox llamado cboCategorias. Sabiendo el valor del
ndice actual o activo se hace uso de una sentencia selectiva switch que evala cul de los
tems ha sido seleccionado. Se sabe que el primer tem de la lista desplegadle es
<Seleccionar> y le corresponde el ndice 0, Diseo Grfico el ndice 1, Diseo Web el
ndice 2 y as sucesivamente. Cuando sea
<Seleccionar> solo se procede a limpiar los objetos lstCurOfer y lstCostos a travs
del mtodo clear() aplicados a las variables modelo1 y modelo2. Si el tem seleccionado es
Diseo Grfico se procede a limpiar los objetos lstCurOfer y lstCostos y se agrega los
nombres de los cursos Corel Draw y Photo Show con sus respectivos costos a travs del
uso del mtodo addElement aplicados a las variables modelo1 y modelo2 que tienen
relacin directa con los objetos lstCurOfer y lstCostos. De igual forma se trabaja para los
dems tems del objeto JComboBox llamado cboCategorias.
Y si seleccionas el tem Diseo Grfico se visualizar los cursos con sus respectivos
costos en los JList del lado izquierdo del diseo del formulario.
55
Se declara una variable entera llamada ndice, esta variable recibe el valor del ndice
del tem seleccionado gracias al mtodo getSelectedIndex().
Lo que se quiere es
seleccionar el tem de la caja de lista de lstCostos que tenga el mismo ndice que
lstCurOfer, para ello se usa el mtodo setSelectedIndex(indice) para dar el mismo ndice a
la caja de lista lstCostos. Finalmente hacemos que el botn de comando Agregar se habilite
con el mtodo setEnabled()
Aqu declaramos dos variables de tipo String llamados curso y costo y las variables
enteras total y i. En la variable curso se almacena el curso seleccionado en la lista
lstCurOfer, el mtodo getSelectionValue() trae consigo el tem seleccionado pero lo trae
como objeto y al poner (String) hacemos que se convierta en cadena de caracteres
para que pueda ser asignada a la variable curso. De igual manera se hace con la variable
costo. Para agregar un tem a una caja de lista se usa el mtodo addElement perteneciente al
Ing. Oscar Ascn Valdivia
56
En esta programacin se hace uso del mtodo remove() que elimina un tem de la lista a
travs de la variable objeto modelo3 modelo4 dado el valor del ndice. Al final de la
programacin se inhabilita el botn de comando Eliminar.
Ahora procede a programar en el botn de comando Calcular (slo escribe lo que seala la
llave de color rojo):
57
58
TAREA
1. Desarrollar un programa que solo permita agregar 5 trabajadores y eliminar a un trabajador seleccionado.
59
60
61
ObjetodeControlJTable
Como programadores, sabemos muy bien que la presentacin de datos tabulados es una de las tareas
ms comunes que se presentan al momento de crear interfaces grficas; desde la simple tabla que
permite nicamente mostrar el resultado de una consulta, hasta las que permiten editar directamente
el contenido de cada celda, ordenar las columnas, personalizar su apariencia, etc. Todas las tareas
antes descritas, y muchas otras, son posibles de realizar utilizando la clase JTable; por supuesto,
mientras ms complejo sea el requerimiento a cubrir, se requerir en igual medida utilizar ms
mtodos o recursos de la clase.
Los modelos de tabla son objetos que implementan la interface TableModel; a travs de ellos es
posible personalizar mucho ms y mejor el comportamiento de los componentes Jtable,
permitiendo utilizar al mximo sus potencialidades.
El siguiente grfico intenta mostrar como cada componente JTable obtiene siempre sus datos
desde un modelo de tabla.
Propiedad ms usada:
Model: Permite definir el nmero de columnas y filas del objeto como tambin las
62
DefaultTableModel
Esta clase permite construir el modelo para el objeto Table. Los mtodos ms utilizados son:
addColumn(): Aade una columna al modelo.
Aplicacin
Construir una aplicacin que permita calcular el promedio de las notas obtenidas en el curso de
Programacin Visual. La aplicacin debe permitir el ingreso del nombre del alumno, la nota de la I
Unidad, la nota de la II Unidad y la nota de la III Unidad. Adems debe permitir la seleccin del
turno a la que pertenece el alumno. A travs de un botn de comando debe agregar los datos en un
objeto Jtable, calculando el promedio de las notas; y a travs de otro botn de comando debe
eliminar la fila seleccionada en el objeto JTable. Tambin se debe mostrar el total de filas
agregadas en el objeto JTable.
Solucin:
63
64
65
66
67
Vamos a proceder a programar. Comenzamos con hacer uso del paquete swing y
especficamente a las clases JoptionPane y a la clase JTable.
68
Luego procedemos a crear un modelo para el objeto JTable llamado Tabla a travs de la
clase DefaultTableModel. Lo hacemos dentro de la clase frmNotas. Usar la clase
DefaultTableModel es posible gracias al import javax.swing.table.*;
Declaramos y creamos una variable de memoria titulos del tipo cadena y es un arreglo. Esta
variable titulos se inicializa con los valores Alumno, I Unidad, II Unidad, III
Unidad, Promedio y Turno, que sern los ttulos de las columnas del objeto JTable.
Luego, con el mtodo setColumnIdentifiers() se define las columnas con sus
respectivos ttulos en la variable dtm (modelo del JTable llamado Tabla). Finalmente, se
vincula el modelo, representado en la variable dtm, al objeto JTable llamado Tabla.
69
Observamos
que el objeto
definas en
constructor.
Procedamos con la programacin del botn de comando Agregar (slo escribe
lo que se seala la llave de color rojo).
70
tamao
6. Luego, declaramos las variables de memoria n1, n2, n3 y total de tipo entero,
la variable promedio de tipo double y una variable de memoria verifica
de tipo booleano. Las variables de memoria n1, n2 y n3 reciben los valores
ingresado en los cuadros de textos txtn1, txtn2 y txtn3 respectivamente. Con la
variable de memoria verifica se pretende evaluar si se lleg a escribir en los
cuadros de textos y se haya seleccionado un turno. Con la sentencia IF
evaluamos la variable verifica y con el operador ! hacemos negacin, es decir, si
la variable verifica es falso entonces con ! se convierte en verdadero. Si la
variable verifica es falso significa que se ingres los datos en los cuadros
de textos y se seleccion el turno, entonces procedemos a calcular el
promedio teniendo presente que las variables n1,n2, n3 siendo enteras deben ser
tratadas como reales (double). Posteriormente, hacemos uso del arreglo datos
asignando los datos ingresados y el turno seleccionado en cada uno de los
elementos. Con el mtodo addRow() logramos crear una fila con los valores
contenidos con el vector o arreglo datos. Luego, limpiamos los cuadros de
textos y hacemos que el objeto JComboBox quede en
<Seleccionar> al dar el valor cero al mtodo setSelectedIndex(). Si la variable
verifica es verdadero significa que falta ingresar algn dato o seleccionar el
turno. Finalmente, se muestra la cantidad de filas agregadas en el cuadro
de texto txtTotal y haciendo uso del mtodo setRowCount() perteneciente a
dtm.
Declaramos las variables fila y total de tipo entero. La variable fila se le asigna
el valor de la posicin de la fila seleccionada en el objeto Jtable llamado Tabla.
Con la sentencia IF se evala a la variable fila si es mayor o igual a cero
procedemos a remover o borrar la fila previamente seleccionad, caso contrario
se muestra un mensaje indicando que se debe seleccionar una fila en la Tabla.
Finalmente, se muestra la cantidad de filas agregadas en el cuadro de texto
txtTotal y haciendo uso del mtodo setRowCount() perteneciente a dtm.
71
TAREA
1. Usando el objeto Jtable disea el siguiente formulario:
72
Se desea ingresar la descripcin del artefacto, seleccionar la marca que puede ser SONY,
PANASONIC, SAMSUMG, LG, etc., seleccionar el tipo de artefacto que puede ser AUDIO,
VIDEO y LINEA BLANCA y el ingreso del costo del artefacto. El objeto JTable se debe
definir 5 columnas referido a los datos antes mencionados y la quinta colmuna debe
titularse PRECIO donde se mostrar el costo del artefacto incrementado en 19% (IGV).
Al momento de usar el botn de comado Agregar se genera una fila en el Objeto JTable y
se mostrar la descripcin del artefacto de mayor costo (cuando haya 2 o mas artefactos
expresados en el JTable) y el total de artefactos visualizados. Al usar usar el botn de
comando eliminar, aparte de eliminar la fila seleccionada en el Objeto JTable, se debe
buscar la descripcin del artefacto de mayor costo.
73
SwingMenus
Aqu podemos ver el rbol de herencia de las clases relacionadas con los mens:
Como se ve en la figura, los tems de mens (incluidos los propios mens) son simples
botones. Podramos preguntarnos como un men, si es slo un botn, muestra sus tems.
La respuesta es que cuando se activa un men, automticamente trae un men
desplegable que muestra sus tems.
Crear y congifurar Barras de Men
Mtodos:
74
AdicindelMen
Ubicar el cursor en la etiqueta [JFrame], hacer clic en el botn derecho del ratn. Se
desplegar el siguiente men flotante:
Seleccionamos Add Form Palette (en la versin en castellano debe decir Agregar desde
paleta), luego la opcin Swing y finalmente JMenuBar. La interfaz que ese est
desarrollando adopta la siguiente apariencia:
75
76
77
78
Si procedemos a compilar y ejecutar la aplicacin, vemos que al dar click sobre el men
Archivos, se observar lo siguiente:
79
Repetir el procedimiento antes explicado para agregar los tems: Guardar e Imprimir.
Las respectivas variables en el rbol o panel de Inspector (Navegador) lo cambiamos el
nombre por: jMenuItem_guardar y jMenuItem_imprimir. Nuevamente compilamos y
ejecutamos la aplicacin. El formulario se muestra de la siguiente manera:
80
Ahora procedamos con el diseo del men dentro del diseo del formulario. Al momento
de que lo ejecutemos debe quedar el diseo del formulario de la siguiente forma:
81
Aplicacinadicional
Vamos a construir una aplicacin que permita ejecutar todas las aplicaciones propuestas
en la Tarea 2 de la sesin Uso de los objetos JLabel, JtextField y JButton. Dicha tarea
contiene la formulacin de cuatro aplicaciones. Por lo tanto debemos construir un men
cuya pcin en la barra de men sea Tarea 2 y sus tems deben ser Venta de camisas
para la primera aplicacin, Venta de computadora para la segunda aplicacin,
Conversiones para la tercera aplicacin y Clculo para la cuarta aplicacin. Una vez
diseado el men debemos proceder a programar para que sean invocados o ejecutados
desde la opcin (tem) del men.
82
Solucin:
1. Creamos un proyecto denominado ObjetosMenus. Luego, seleccionamos el
paquete objetosmenus y dando click botn derecho del mouse en la opcin New
(Nuevo) seleccionamos Formulario Jframe.
Indicamos como nombre del formulario frmMenu y luego damos click en Terminar
o Finish.
2. Estando en el entorno de desarrollo de NetBeans, en el panel de Inspector
seleccionamos JFrame y damos click botn derecho del mouse seleccionamos
Agregar desde paleta, luego Swing y posteriormente JmenuBar.
83
3. Se crear una barra de Men con una primera opcin del tipo Jmenu. Procedemos a
renombrarlo con JMenuTarea2 y cambiarle el texto como Tarea 2 y
posteriormente creamos un JmenuItem.
84
6. Volviendo al entorno debemos crear 4 objetos del tipo Jframe, uno para cada
opcin o aplicacin de la Tarea 2.
85
86
Menusdesplegables
Una barra de men contiene uno o ms mens, y tiene una posicin dependiente de la
plataforma -- normalmente debajo de la parte superior de la ventana. Un men
desplegable es un men que es invisible hasta que el usuario hace una accin del ratn
especfica de la plataforma, como pulsar el botn derecho del ratn sobre un componente.
Entonces el men desplegable aparece bajo el cursor.
Crear y congifurar Barras de Men
Mtodos:
87
UsodelaclaseRadioButton
Los Botones de Radio son grupos de botones en los que, por convencin, slo uno de
ellos puede estar seleccionado. Swing soporta botones de radio con las clases
JRadioButton y ButtonGroup. Para poner un botn de radio en un men, se utiliza la
clase JRadioButtonMenuItem. Los botones de radio tienen un aspecto similar a los
checkboxes, pero, por convencin, los checkboxes no tienen lmites sobre cuantos tems
pueden estar seleccionados a la vez. Como JRadioButton desciende de
AbstractButton, los botones de radio Swing tienen todas las caractersitcas de los
botones normales.
Aqu podemos ver una imagen de una aplicacin que utiliza cinco botones de radio para
elegir qu tipo de mascota mostrar:
UsodelaclaseCheckBox
La versin Swing soporta botones checkbox con la clase JCheckBox, Swing tambin
soporta checkboxes en mens, utilizando la clase JCheckBoxMenuItem. Como
JCheckBox y JCheckBoxMenuItem descienden de AbstractButton, los checkboxes de
Swing tienen todas las caractersticas de un botn normal
Adicionaritemsdentrodelostems
En la sesin anterior (Tema 10), estuvimos desarrollando el diseo de un men que qued
su panel de inspector de la siguiente manera:
Ahora vamos a construir un tercer men algo ms complejo. La aplicacin una vez
Ing. Oscar Ascn Valdivia / Enrique Rivas Uriol
88
89
90
91
Para lograr esto es necesario adicionar dentro de los JMenu ms JMenus. Slo los
ltimos para adicionar en cada rama del rbol del panel Inspector sern los JMenuItem.
Repetir el paso Anterior para que la aplicacin una vez ejecutada adopte la siguiente
forma:
92
Aplicacin1
Vamos a construir una aplicacin que permita disear una barra de menu, siendo la
opcin principal (construdo a partir de un objeto JMenu) llamada Objetos de Control. A
partir de sta opcin creas items usando JMenuItems para las opciones: Tarea 2,
Tarea3, Tarea4, Tarea 5 y Tarea 6. Para la opcin Tarea 2 defines cuatro tems que
indiquen: Ventas de Camisas, Ventas de Computadoras, Conversiones y Clculo.
La tarea 2 contiene la formulacin de cuatro aplicaciones. Una vez diseado el men
debemos proceder a programar para que sean invocados o ejecutados desde la opcin
(tem) del men.
Solucin:
1. Creamos un proyecto denominado MenusObjetos. Luego, seleccionamos el
paquete menusobjetos y dando click botn derecho del mouse en la opcin New
(Nuevo) seleccionamos Formulario Jframe.
93
Indicamos como nombre del formulario frmMenu y luego damos click en Terminar
o Finish.
3. Se crear una barra de Men con una primera opcin del tipo Jmenu. Procedemos a
renombrarlo con JMenuObjetosControl y cambiarle el texto como Objetos de
Control y posteriormente creamos un JmenuItem.
94
95
6. Volviendo al entorno de NetBeans debemos crear los 4 items del tipo JMenuItem
dentro de la opcin JMenuTarea2. En el panel Inspector debe quedar de la
siguiente manera:
96
97
TAREA MENUS
1. Redisea el siguiente men utlizando el JSeparator.
Mantenimiento Docente
Alumno Apoderado
------------------------ Semestre
Acadmico Nivel de Estudios
Grado
------------------------ Curso
Procesos
Matricula
Renovacin de Matrcula
--------------------------- Nota
Libreta de Notas
2. Contina la aplicacin desarrollada en La clase de Menus, haciendo que las aplicaciones
propuestas en las tareas anteriores
men, siendo ejecutadas desde el formulario que contiene al men. En la barra de men
crear una opcin que exprese Objetos contenedores. A partir de sta opcin
creas items usando JMenuItems para las tareas de Listas. Para cada de estas tareas
defines las opciones o tems segn las aplicaciones propuestas en dichas tareas.
Ing. Oscar Ascn Valdivia / Enrique Rivas Uriol
98
99