uso del objeto jframe - Biblioteca Central de la Universidad

Anuncio
UNIVERSIDAD NACIONAL DEL SANTA
FACULTAD DE INGENIERIA
E.A.P INGENIERIA DE SISTEMAS E INFORMATICA
MANUAL DE PROGRAMACION VISUAL CON JAVA
PARTE - 2
Ing. Mirko Manrique Ronceros
Primera Edición
INDICE
Uso del Objeto JFrame
03
Objetos Contenedores Jpanel y JScrollPanel
17
Objeto Jpanel
17
Objeto JSCrollPanel
19
Objetos Contenedores JTabbedPanel y JDesktoPanel
33
Objeto JTabberPanel
33
Objeto JDesktopPanel
34
Objetos Menús JMenúBar y JMenúItem
53
Objeto JMenúBar
53
Objeto JMenúItem
53
Objetos Menús JRadioButtonMenúItem, JSeparador y Jmenú
62
Objeto JRadioButtonMenúItem
63
Objeto JSeparador
63
Objeto JMenú
63
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
USO DEL OBJETO JFRAME
Objeto de Control JFrame
Hasta el momento hemos hablado muy poco o casi nada del objeto Jframe, es decir,
acerca del formulario. Es un objeto contenedor por excelencia debido a que es una
interfase que facilita hacer los procesos que necesita el usuario de la aplicación. En
este objeto podemos situar todos los demás componentes que necesitemos para el
desarrollo de la interfase de nuestra aplicación.
En la figura anterior muestra la jerarquía de herencia de este componente desde
Object, que es el padre de todas las clases de Java. Los métodos estarán repartidos a
lo largo de toda la jerarquía. Así por ejemplo, resulta intuitivo que debiera haber un
método para cambiar el color de fondo del formulario, pero él no tiene ningún método
para ello, lo tiene Componet.
Propiedades más usadas:
•
Title: Permite definir el título del formulario, es decir, la etiqueta de la la barra
de título.
Ing. Mirko Manrique Ronceros
Página
3
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
•
Programación Visual con Java
Font: Se establece el tipo de letra y el tamaño que servirá de base a cualquier
expresión que se coloque con cualquier objeto de control dentro del formulario.
•
Enabled: Permite habiltar o inhabilitar el uso del objeto.
Métodos más usados:
•
setTitle(): Añade el títutlo en el formulario.
•
setSize(): Establece el tamaño del formulario.
•
setLocation(): Establece la ubicación del formulario dentro de la pantalla.
•
setVisible(): Establece la visibilidad del objeto. Usa valores booleanos.
•
setIconImage(): Establece el ícono que se colocará al lado izquierdo del título
del formulario.
•
show(): Permite cargar un formulario a la maemoria para ser vista por el
usuario.
•
Hide(): Permite ocultar al formulario.
Ing. Mirko Manrique Ronceros
Página
4
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Aplicación
Construye una aplicación que permite ingresar el nombre del postulante, la cantidad
de preguntas bien contestadas y la cantidad de preguntas mal contestadas. La suma
entre las preguntas bien y mal contestadas no debe superar a 100. Por cada pregunta
bien contestada vale 4.08 puntos y por cada pregunta mal contestada vale -1.04
puntos. Se agregarán los datos antes mencionados en objetos JList y se debe obtener
el postulante de mayor puntaje o el pustulante de menor puntaje en un segundo
formulario. Usar los atributos y métodos de la clase Jframe.
Solución:
1. Procedemos a crear un proyecto denominado Práctica, la misma que
contendrá al paquete práctica. A partir de éste paquete vamos a crear un
formulario con el objeto Jframe, seleccionando dicho paquete y al dar click con
el botón derecho del mouse se muestra un menú flotante. Seleccionemos
Formulario JFrame.
2. A continuación, colocaremos como nombre al formulario frmPostulante.
Luego dar click en el botón de comando Finish (en caso de que la versión de
NetBeans es en castellano entonces dar click en el botón de comando
Terminar).
Ing. Mirko Manrique Ronceros
Página
5
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
3. Se muestra el entorno de desarrollo de NetBeans y no olvidemos de dar click en
el botón derecho del mouse sobre el formulario y establece AbsoluteLayout en
SetLayout.
Ing. Mirko Manrique Ronceros
Página
6
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
4. Procedemos a colocar los objetos de control, tal como lo apreciamos en el
siguiente diseño de formulario.
5. Procedemos a quitar los ítems de cada uno de las cajas de listas.
6. Los objetos de control en el diseño del formaulario tienen los siguientes
nombres:
Ing. Mirko Manrique Ronceros
Página
7
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
7. Ahora bien, si observamos en el diseño del formulario, los cuatro objetos JList
no tienen ítems. Los objetos JList referidos a Postulante, Buenas, Malas y
Puntaje, se llenarán de ítems al momento de usar el botón de comando
Agregar. Siendo cutro JList entonces necesitamos cuatro modelos del tipo
DefaultListModel, uno para cada Jlist, para lo cual debemos incluir en el
código de la programación el paquete swing con la siguiente instrucción:
Ahora
procedemos
a
escribir
la
definición
de
las
variables
del
tipo
DefaultListModel en la clase frmPostulante.
Ing. Mirko Manrique Ronceros
Página
8
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
8. Una vez definido las 4 variables de memoria del tipo DefaultListModel, en el
método constructor se debe indicar que la variable modelo1 es para la caja de
lista lstPost, la variable modelo2 para la caja de lista lstBuenas, la variable
modelo3 para la caja de lista lstMalas y la variable modelo4 para la caja de
lista lstPuntaje. Antes haremos uso del método setTitle() para definir el título
del formulario en la barra de título cuya expresión es “Postulantes al Examen de
Admisión”. También hacemos que los botones de comando Agregar y Eliminar
se inhabilite su uso desde la ejecución de la aplicación. Los cuadros de textos
txtPost, txtBien y txtMal deben inhabilitarse su uso en el momento de la
ejecución. Haremos uso de los métodos del objeto JFrame llamdados setSize()
y setLocation() para darle el tamaño apropiado al formulario y ubicación
dentro
de
la
pantalla.
El
operador
this
hace
referencia
al
formulario
frmPostulante. Sólo escribe lo que señala la llave de color rojo.
9. Procedemos a definir cuatro atributos o propiedades para la clase
frmPostulante. Las líneas de código programación lo puedes escribir después
de las líneas de código que definieron a las cuatro variables de tipo
DefaultListModel.
Ing. Mirko Manrique Ronceros
Página
9
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Los atributos mayor y menor es para almacenar el mayor y menor puntaje de
los postulantes ingresados en los objetos JList y los atributos postMay y
postMen es para almacenar el nombre del postulante de mayor puntaje y el
nombre del postulante de menor puntaje.
10.
Debajo de la
definición
de
los
atributos, vamos a
construir
los
métodos que nos
permitan
dar
y
obtener el valor a
cada uno de los
atributos.
Comenzaremos
por
los
mayor
atributos
y
menor
definiendo
los
siguientes
métodos:
Ing. Mirko Manrique Ronceros
Página 10
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
El método setMayor() tiene un parámetro llamado m de tipo double y con el
operador void significa que no tiene el método valor de retorno. Este método
sirvirá almacenar en el atributo mayor el valor del parámetro m. En cambio el
método getMayor() no tiene parámetro pero su valor de retorno es double, es
decir, que éste método arroja o se puede obtener el valor almacenado en el
atributo
mayor.
Lo
mismo
sucede
para
los
métodos
setMenor()
y
getMenor(). Vamos a proceder a crear los métodos para los atributos
postMay y postMen.
11. Vamos a proceder a programar en el botón de comando Nuevo.
Ing. Mirko Manrique Ronceros
Página 11
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
12. Ahora programemos en el botón de comando Agregar.
Procedemos a declarar las variables buenas y malas como enteras y puntaje
como real (double). Las variables de memoria enteras reciben los valores
ingresados en los cuadros de textos txtBien y txtMal y la variable puntaje se
almacena el resultado según el valor de las preguntas bien y mal contestadas.
Con la sentencia IF evalúa que la cantidad de preguntas contestadas no
superen a 100. Si no supera a 100 procedemos agregar en las cajas de listas a
través de las variables de tipo DefaultListModel.
13.
Programemos en el objeto JList denominado lstPost en el evento
ValueChanged.
En esta programación se busca que al momento de seleccionar a un postulante
en la caja de lista lstPost, se seleccione inmediatamente la cantidad de
preguntas bien contestadas, la cantidad de preguntas mal contestadas y el
puntaje en las demás cajas de listas. Se finaliza habilitando el uso del botón de
comando Eliminar.
Ing. Mirko Manrique Ronceros
Página 12
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
14.
Programación Visual con Java
Programemos en el botón de comando Eliminar en el evento
Eliminamos lo seleccionado con el método remove perteneciente a los modelos
de cada caja de lista.
15. Es hora de crear el segundo formulario. Para ello seleccionamos el paquete
práctica y en la opción New (nuevo) elegimos Formulario JFrame. A éste
formulario se llamará frmConsulta, siendo el diseño el siguiente:
16.
Es
necesario
que
los
objetos
JRadioButton
pertenezcan
a
un
ButtonGroup.
Ing. Mirko Manrique Ronceros
Página 13
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
17.
Programación Visual con Java
Procedemos a colocar los nombres a los objetos de control.
18. El formulario frmConsulta será activado al momento de dar click en el botón de
comando btnConsultar del primer formulario frmPostulante. Volvamos al
primer formulario y programemos en el botón Consultar.
Ing. Mirko Manrique Ronceros
Página 14
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
La programación se inicia con la declaración de variables de tipo entero, real y
cadena de caracteres. En la variable cuenta se almacena la totalidad de ítems
existentes en la caja de lista lstPuntaje a través de la variable modelo4. Si la
variable cuenta es mayor o igual a 1 entonces se procede con una sentencia for
a buscar el mayor puntaje y la posición (índice) dentro de la caja de lista
correspondiente al mayor puntaje. Luego con el método setMayor() se asigna el
valor de la variable may al atributo mayor perteneciente a la clase
frmPostulante. La misma idea se hace con el método setMenor() y con las
variables pmay y pmen se almacenan los nombres de los postulantes que
obtuvieron el mayor y menor puntaje respectivamente. Luego se asignan a los
atributos postMay y postMen, a través de los métodos setPostMay() y
setPostMen(), los valores que se encuentra en pmay y pmen. A continuación,
se declara y se instancia la variable form2 de tipo frmConsulta, es decir, se
crea una variable form2 que tiene los mismos atributos y métodos del
formulario
frmConsulta.
Posteriormente
con
los
métodos
getMayor(),
getMenor(), getPostMay() y getPostMen() se pasan los valores a los
atributos a la variable objeto form2. Luego con el método show() hacemos
que el segundo formulario se muestre.
19.
Volvamos al segundo formulario y comenzamos a programar. Definamos
los atributos y la programación en el método constructor.
Los atributos definidos al inicio de la clase frmConsulta nos permitirá recibir los
valores o datos del primer formulario. La programación agregada en el método
constructor define el título del formulario con la expresión “Consulta del Mayor
y Menor Puntaje”, se establece el tamaño del formulario frmConsulta y
finalmente la localización dentro de la pantalla.
Ing. Mirko Manrique Ronceros
Página 15
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
20.
Programación Visual con Java
Programemos en el botón de comando Ver lo siguiente:
Mandamos al cuadro de texto el valor contenido en el atributo postMay siempre
y cuando esté seleccionado el JRadioButton referido al postulante de mayor
puntaje, de lo contario se muetra el contenido del atributo postMen referido al
postulante de menor puntaje.
Ing. Mirko Manrique Ronceros
Página 16
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
OBJETOS CONTENEDORES JPANEL Y
JSCROLLPANEL
Swing Containers
Los objetos pertenecientes a Swing Containers, son objetos que permiten agrupar a
otros objetos y facilitan el manejo de ciertos procesos dentro de una aplicación. En el
entorno de NetBeans la paleta de los Swing Containers muestra lo siguiente:
En el presente tema vamos a hacer uso de los objetos Jpanel y JScrollPanel.
Objeto Contenedor JPanel
Este componente lo que nos permite es Agrupar Otros Componentes dentro de él
(algo así como el Frame en Visual.net o el GroupBox de Power Builder).
Para empezar creamos un proyecto, una vez hecho este paso, vamos al panel del lado
derecho donde se encuentran los elementos Swing Containers y seleccionamos el
componente Panel (Jpanel), lo seleccionamos y soltamos en el Formulario.
Ing. Mirko Manrique Ronceros
Página 17
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Después de hacer esto soltamos y si hacemos click en otro lado del área del
formulario nótese que pareciera que el Panel no estuviera pero si esta pase el mouse
por donde colocó el Panel y ahí lo ubicará, pero no se alarmen si está.
Bien para no tener estos problemas vamos a
darle un borde a nuestro JPanel, En la ventana de
propiedades como se muestra en la imagen
seleccionamos a la propiedad Border.
Nos
mostrará
la
siguiente
imagen
Ing. Mirko Manrique Ronceros
Página 18
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Bien tendremos esto:
Propiedad más usada:
•
Border: Se establece el borde y el título si fuese necesario.
Método más usado:
•
setEnabled(): Para habilitar o inhabilitar el uso del objeto.
Objeto Contenedor JScrollPanel
Un objeto ScrollPanel permite ubicar dentro de ella uno o varios objetos que
comúnmente son objetos de control. Cuando se sobrepasa el espacio del objeto
JScrollPanel, éste muestra las barras de desplazamiento vertical y/o horizontal.
Por ejemplo, agregamos el JScrollPanel y dentro del mismo agregamos un JPanel para
poder utilizar los componentes libremente; no olvidarse de la propiedad Aboslute
Layout que nos permite colocar en cualquier posición otro componente dentro del
Jpanel. Haremos que cuando cargue el formulario cargue un texto dentro de un Frame
Ing. Mirko Manrique Ronceros
Página 19
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Si colocamos el siguiente código en el botón de comando Mostrar:
private void BtnMostrarActionPerformed(java.awt.event.ActionEvent evt) {
lblTexto.setText(“Observa que el código de ejemplo selecciona el tamaño preferido del
contenedor del panel desplazable. Una alternativa sería seleccionar el tamaño
preferido del propio panel desplazable. De cualquier modo, se está limitando el
tamaño del panel desplazable. Esto es necesario porque el tamaño preferido de un
panel desplazable es ser tan grande como pueda”);
}
Para el botón de comando Limpiar colocamos:
private void btnLimpiar ActionPerformed(java.awt.event.ActionEvent evt) {
lblTexto.setText(“”);
}
Al ser ejecutado se debe mostrar el formulario como sigue.
Ing. Mirko Manrique Ronceros
Página 20
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Aplicación
Construye una aplicación que permita ingresar el título de una película, seleccionar su
categoría que puede ser Comedia, acción, Dibujos animados o Drama. Además se
debe ingresar la duración en minutos de la película y el nombre del actor principal.
Una vez ingresado los datos se procede a agregar en un objeto JTable generando una
fila de datos y mostrando en un cuadro de texto el número de películas ingresadas.
Solución:
1. Creamos un proyecto denominado Ejercicios.
Luego dar click en el botón de comando Finish (Terminar si el entorno de
NetBeans es en castellano).
2. Estando en el entorno de NetBeans, seleccionamos el paquete ejercicios y
dando click botón derecho del mouse se muestra un menú flotante, donde
seleccionamos Formulario Jframe.
Ing. Mirko Manrique Ronceros
Página 21
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
3. A continuación, colocaremos como nombre de formulario frmPeliculas.
Luego dar click en el botón de comando Finish (en caso de que la versión de
NetBeans es en castellano entonces dar click en el botón de comando
Terminar).
4. Se muestra el entorno de desarrollo de NetBeans y no olvidemos de dar click en
el botón derecho del mouse sobre el formulario y establece AbsoluteLayout en
SetLayout.
Ing. Mirko Manrique Ronceros
Página 22
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
5. Procedemos a colocar un objeto de control Jlabel con la expresión “PELICULA:”
y al lado derecho un cuadro de texto JTextField.
6. Colocamos
un
objeto
contenedor
JPanel
por
debajo
de
la
expresión
“PELICULA:”.
7. Procedemos
a
utilizar
la
ventana de propiedades del
objeto Jpanel. No vamos a
usar la ficha de propiedades
que
se
encuentra
derecho
del
formulario,
seleccionamos
al
lado
diseño
del
sino
al
que
objeto
JPanel y luego al dar click
botón
derecho
seleccionamos
del
Mouse,
la
opción
propiedades.
Ing. Mirko Manrique Ronceros
Página 23
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
8. Seleccionamos la propiedad Border y damos click en el botón de comando
correspondiente a ésta propiedad.
9. A continuación, seleccionamos como borde disponible a TitledBorder.
10.
En título colocamos “Categorías de Películas”.
Ing. Mirko Manrique Ronceros
Página 24
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
11.
Programación Visual con Java
Ahora procedemos a definir el borde (propiedad que se encuentra encima
de Título).
12.
Posteriormente, seleccionamos el tipo de Borde EtchedBorder.
Ing. Mirko Manrique Ronceros
Página 25
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
13.
Programación Visual con Java
Luego de dar click en el botón de comando OK, queda definido el Borde y
el título.
14.
Volvemos a dar click en el botón de comando OK y regresamos a la
ventana de propiedades del JPanel.
Cerrar ésta ventana usando el botón de comando Close (Cerrar).
Ing. Mirko Manrique Ronceros
Página 26
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
15.
El diseño del formulario queda así:
16.
Ahora debemos hacer algo muy importante, que es establecer como
AbsoluteLayout al objeto JPanel para que permita colocar los objetos de control
con facilidad.
17. Colocamos cuatro objetos de tipo JRadioButton dentro del objeto Panel,
quedando el diseño del formulario así:
Ing. Mirko Manrique Ronceros
Página 27
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
18. No olvidemos de crear un objeto ButtonGroup e indicar para cada objeto
JRadioButton en su propiedad ButtonGroup que pertenecen a ButtonGroup1.
19.
Seguimos
agregando los objetos de
control según observamos
en
el
diseño
del
formulario. Esta vez vas a
agregar
un
objeto
JScrollPanel para colocar
dentro de ella a un objeto
JTable.
Ing. Mirko Manrique Ronceros
Página 28
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
20.
Programación Visual con Java
A continuación colocamos un objeto JTable. Los nombres de los objetos
de control son tal como se aprecia en el siguiente diseño de formulario.
21.
Vamos a proceder a programar. Comenzamos con hacer uso del paquete
swing y específicamente a las clases JOptionPane y a la clase JTable.
22. Luego procedemos a crear un modelo para el objeto JTable llamado Tabla a
través de la clase DefaultTableModel. Lo hacemos dentro de la clase
frmNotas. Usar la clase DefaultTableModel es posible gracias al import
javax.swing.table.*;
Ing. Mirko Manrique Ronceros
Página 29
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Declaramos
y
creamos
una
Programación Visual con Java
variable
de
memoria
dtm
del
tipo
DefaultTableModel.
23.
En el método constructor programamos lo siguiente (sólo escribe lo que
se señala la llave de color rojo):
Declaramos y creamos una variable de memoria titulos del tipo cadena y es un
arreglo. Esta variable titulos se inicializa con los valores “Título de la Película”,
”Categoría”, “Duración(min)” y “Actor Principal”, que serán los títulos de las
columnas del objeto JTable. Luego, con el método setColumnIdentifiers() se
define las columnas con sus respectivos títulos en la variable dtm (modelo del
JTable llamado Tabla). Se vincula el modelo, representado en la variable dtm,
al objeto JTable llamado Tabla. Inhabilitamos los objetos indicados en la
programación y damos el enfoque al botón de comando Nuevo.
24.
Procedemos a programar en el botón de comando Nuevo (sólo escribe lo
que se señala la llave de color rojo).
Ing. Mirko Manrique Ronceros
Página 30
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
25.
Programación Visual con Java
Procedemos a programar en el botón de comando Agregar (sólo escribe
lo que se señala la llave de color rojo).
Declaramos una variable de memoria llamada datos de tipo String y de tamaño
4. También declaramos una variable entera llamada total. En el primer
elemento del arreglo datos (datos[0]) se asigna el valor ingresado en el cuadro
de texto txtPel (el título de la película). A continuación, se hace uso de
sentencias selectivas IF para evaluar cuál de los objetos JRadioButton ha sido
seleccionado y según el objeto seleccionado se asigna la categoría al segundo
elemento del arreglo datos (datos[1]). En el tercer elemento (datos[2]) y
cuarto elemento (datos[3]) del arreglo datos se asignan la duración y el actor
principal respectivamente. Con el método addRow(), agregamos una fila en el
objeto Table con los datos contenidos en el arreglo datos. Finalmente, en la
variable total se asigna la cantidad de filas de datos que tiene el objeto JTable
haciendo uso del método getRowCount() de la variable objeto dtm. Este
último valor conseguido es visualizado en el cuadro de texto txtTotal a través
del método setText().
26.
Luego, procedemos a programar en el botón de comando Eliminar (sólo
escribe lo que se señala la llave de color rojo).
Ing. Mirko Manrique Ronceros
Página 31
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Declaramos las variables fila y total de tipo entero. La variable fila se le asigna
el valor de la posición de la fila seleccionada en el objeto Jtable llamado Tabla.
Con la sentencia IF se evalúa a la variable fila si es mayor o igual a cero
procedemos a remover o borrar la fila previamente seleccionada, 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 método setRowCount() perteneciente a dtm.
27.
Finalmente, programamos en el botón de comando Cerrar.
28.
Procedemos a ejecutar el formulario.
Ing. Mirko Manrique Ronceros
Página 32
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
OBJETOS CONTENEDORES JTABBEDPANEL Y
JDESKTOPPANEL
Objeto Contenedor JTabbedPanel
Este componente esta compuesto por un conjunto de paneles que puede almacenar
un contenido en un espacio compacto. Sitio donde ocultamos o revelamos el contenido
almacenado en los paneles con pestañas haciendo click en la pestaña del panel que se
desea acceder. Por ejemplo, para empezar creamos un proyecto, una vez hecho este
paso, vamos al panel del lado derecho donde se encuentran los elementos Swing
Containers y seleccionamos el componente Panel (JPanel) Lo seleccionamos y
soltamos en el Formulario.
Para usar el JTabbedPanel debemos de insertarle un Panel dentro de el mismo ya que
si no lo hacemos, cualquier controles que agreguemos se maximizará apoderándose
de Tab1 y cada control que agreguemos será un nuevo Tab.
Procedemos entonces a agregarle el panel a nuestro JTabbed para poder utilizarlo
correctamente.
Ing. Mirko Manrique Ronceros
Página 33
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
No
nos olvidemos de ponerle al JPanel su propiedad Aboslute Layout para poder utilizar
los controles libremente dentro de él.
Propiedad más usada:
•
Border: Se establece el borde y el título si fuese necesario.
Método más usado:
•
setEnabled(): Para habilitar o inhabilitar el uso del objeto.
Objeto Contenedor JDesktopPanel
Este objeto es utilizado más para mejorar el diseño de los formularios. Es un interfaz
más agradable para diseñar las aplicaciones.
Ing. Mirko Manrique Ronceros
Página 34
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Como observamos los objetos de control se dibujan encima del objeto JDesktopPanel,
que por defecto es de un fondo de color azul.
Propiedad más usada:
•
Background: Para definir el color del objeto JDesktopPanel.
Aplicación
Construye una aplicación que permita ingresar los apellidos, los nombres, el teléfono,
seleccionar el grado de instrucción y el sexo de un alumno. Estos datos se manejarán
en una pestaña del objeto JTabbedPanel. En una segunda pestaña se debe seleccionar
el curso que el alumno quiere matricularse y la forma de pago. A través de un botón
de comando MATRICULAR se llevará los datos a un objeto JTable que se encuentra en
una tercera pestaña. En la pestaña donde se encuentra el objeto JTable se mostrará la
suma de los precios de todos los cursos que el alumno quiere matricularse. Habrá la
posibilidad de quitar o eliminar un curso que el alumno desista llevarlo.
Solución:
1. Creamos
un
proyecto
denominado
AplicaContenedores.
estando
NetBeans,
en
el
Luego
entorno
de
seleccionamos
el
paquete aplicacontenedores y
dando click botón derecho del
mouse, se muestra un menú
flotante, donde seleccionamos
Formulario JFrame.
Ing. Mirko Manrique Ronceros
Página 35
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
2. A continuación, colocaremos como nombre de formulario frmMatricula.
Luego dar click en el botón de comando Finish (en caso de que la versión de
NetBeans es en castellano entonces dar click en el botón de comando
Terminar).
3. Se muestra el entorno de desarrollo de NetBeans y no olvidemos de dar click en
el botón derecho del mouse sobre el formulario y establece AbsoluteLayout en
SetLayout.
Ing. Mirko Manrique Ronceros
Página 36
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
4. Procedemos a colocar un objeto de control JLabel con la expresión “MATRICULA
DE CURSOS DE EXTENSION”. Debajo de ésta expresión colocaremos un objeto
JTabbedPanel. Una vez seleccionado el objeto JTabbedPanel de la paleta y lo
ubicamos en el formulario, antes de dar click para que quede dibujado, tiene la
siguiente apariencia:
Al dar click se reduce el tamaño del objeto JTabbedPanel.
Debemos agrandar dicho objeto hasta que quede así:
5. Estando seleccionado el objeto JTabbedPanel, dar click botón derecho del
mouse, seleccionamos la opción Agregar desde Paleta, luego Swing y
elegimos Jpanel.
Ing. Mirko Manrique Ronceros
Página 37
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Una vez seleccionado Jpanel se creará una pestaña Tab1 en el objeto
JTabbedPanel.
6. Procedemos a colocar AbsoluteLayout en la opción Set Layout cuando
usemos el botón derecho del mouse sobre el Tab1.
Ing. Mirko Manrique Ronceros
Página 38
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
7. A continuación, colocaremos un objeto JdesktopPanel encima del Tab1. Una vez
seleccionado el objeto JDesktopPanel de la paleta y lo ubicamos dentro del
Tab1, antes de dar click para que quede dibujado, tiene la siguiente apariencia:
Al dar click se reduce el tamaño del objeto JDesktopPanel.
Ing. Mirko Manrique Ronceros
Página 39
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Debemos agrandar dicho objeto hasta que quede así:
8. Comenzamos
a
colocar
objetos de control de tipo
JLabel,
JtextField
jComboBox.
El
y
objeto
JComboBox contendrá como
grado
de
instrucción
a
“<Seleccionar”,”Secundaria” y
“Superior.”
También
colocaremos un objeto JPanel
para
el
sexo
del
alumno
donde se establecerá el título
y el borde.
Ing. Mirko Manrique Ronceros
Página 40
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Este objeto JPanel (Jpanel2) referido a sexo se debe establecer en la propiedad
background, el color que debe ser parecido al color del JDesktopPanel.
9. Una vez establecido el color del JPanel2, procedemos a establecer para éste
objeto JPanel2 el AbsoluteLayout en Set Layout.
Ing. Mirko Manrique Ronceros
Página 41
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
10. El objeto JPanel2 esta referido al dato sexo, en cambio el objeto JPanel1 está
referido al Tab1. Como debemos colocar un título a la pestaña Tab1 demos
hacer uso de la vista de propiedades del JPanel1. Puedes seleccionar del panel
Navegador (que se encuentra a la izquierda del diseño del formulario) y al dar
click botón derecho del mouse se muestra un menú flotante y seleccionas
propiedades. Vamos a colocar como título de la pestaña “Datos del alumno”.
11.
Va
mos a proceder a crear otro Tab. Debemos nuevamente seleccionar el objeto
JTabbedPanel, dar click botón derecho del mouse, seleccionamos la opción
Agregar desde Paleta, luego Swing y elegimos Jpanel.
Una vez seleccionado Jpanel se creará una pestaña Tab2 en el objeto
JTabbedPanel.
Ing. Mirko Manrique Ronceros
Página 42
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
12. Procedemos a colocar AbsoluteLayout en la opción Set Layout cuando
usemos el botón derecho del mouse sobre el Tab2.
Ing. Mirko Manrique Ronceros
Página 43
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
13.
Programación Visual con Java
Colocamos un objeto JDesktopPanel en el Tab2 tal como lo hicimos en
anteriormente. Luego sobre el objeto JDesktopPanel al dar click botón derecho
del mouse, en el menú flotante seleccionamos propiedades.
Ing. Mirko Manrique Ronceros
Página 44
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Se establece otro color al objeto JDesktopPanel.
14.
Una vez establecido el color para el objeto JDesktopPanel, procedemos a
colocar los objetos de control para el Tab2. Se utilizará un ComboBox para los
cursos que contendrá los nombres siguientes:
15. Utilizaremos un objeto JPanel para la forma de pago (al contado o al pago de
dos cutotas), que una vez dibujado y establecido el borde y el título, debemos
indicar que su Set Layout es AbsoluteLayout.
Ing. Mirko Manrique Ronceros
Página 45
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
16. Seleccionamos al objeto JPanel3
que
pertenece
al
Tab2
y
definimos el título de la pestaña
tal como se hizo con Tab. Esta
vez
el
título
será
“Curso
a
Matricularse”. Creamos un Tab3
de
la
forma
cómo
se
hizo,
también colocamos un objeto
JDesktopPanel, a éste último le
cambiamos
el
propiedad
color
en
background
posteriormente
colocamos
la
y
los
objetos de control. Se usará un
objeto JTable para visualizar los
cursos matriculados del alumno.
Vamos a colocar los nombres a
cada uno de los objetos de
control para cada Tab del objeto
JTabbedPanel.
Ing. Mirko Manrique Ronceros
Página 46
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
17.
Programación Visual con Java
Vamos a proceder a programar. Comenzaremos con hacer uso del
paquete swing y específicamente a las clases JOptionPane y JTable.
Ing. Mirko Manrique Ronceros
Página 47
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
18. Luego procedemos a crear un modelo para el objeto JTable llamado Tabla a
través 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
dtm
del
tipo
DefaultTableModel.
19.
En el método constructor programamos lo siguiente (sólo escribe lo que
señala la llave de color rojo):
Declaramos y creamos una variable de memoria titulos del tipo cadena y es un
arreglo. Esta variable titulos se inicializa con los valores “Curso Matriculado”,
“Duración”, “Costo”, “Forma de Pago” y “Precio”, que serán los títulos de las
columnas del objeto JTable. Luego, con el método setColumnIdentifiers() se
define las columnas con sus respectivos títulos en la variable dtm (modelo del
JTable llamado Tabla). Se vincula el modelo, representado en la variable dtm,
al objeto JTable llamado Tabla.
20.
Procedemos a programar en el botón de comando Nuevo (sólo escribe lo
que se señala la llave de color rojo).
Ing. Mirko Manrique Ronceros
Página 48
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Declaramos como variables de memoria i y total de tipo entero. Limpiamos los
cuadros
de
textos
y
para
los
objetos
JComboBox
damos
como
ítem
predeterminado a <Seleccionar> (índice activo igual a cero). En la variable
total se cuenta el número de filas del objeto JTable a través de la variable dtm.
Con la sentencia If evaluamos si es mayor a cero y procedemos con la
sentencia for a eliminar fila por fila con el método remove().
21.
Luego, procedemos a programar en el botón de comando MATRICULAR
que se encuentra en el Tab2 (Curso a Matricularse).
Declaramos una variable de memoria llamada datos de tipo String y de tamaño
5. También declaramos las variables total, costo e i como enteros y precio
como numérico real. La variable costo se almacena el contenido del cuadro de
texto txtCosto. En el primer elemento del arreglo datos (datos[0]) se asigna
el valor seleccionado del objeto cboCurso. En el segundo elemento del arreglo
datos (datos[1]) se almacena el contenido del cuadro de texto txtDura y en el
tercer elemento (datos[2]) el contenido del cuadro de texto txtCosto. En el
cuarto elemento se almacena el valor “Contado” si la forma de pago es al
contado y en el quinto elemento el costo descontado en 5%. Si la forma de
Ing. Mirko Manrique Ronceros
Página 49
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
pago es a pagar a cuotas entonces el cuarto elemento se asigna el valor “Pago
de 2 cuotas” y al quinto elemento se asigna el resultado del costo incrementado
en un 10%. Con el método addRow(), agregamos una fila en el objeto JTable
con los datos contenidos en el arreglo datos. En la variable total se asigna la
cantidad de filas de datos que tiene el objeto JTable haciendo uso del método
getRowCount() de la variable objeto dtm. Con la sentencia for buscamos la
suma de los precios en la variable precio. Finalmente asignamos el valor
calculado en precio al cuadro de texto txtPTotal e inicializamos los objetos de
control para la posibilidad de seleccionar otro curso.
Ing. Mirko Manrique Ronceros
Página 50
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
22. También
debemos
programar
Programación Visual con Java
en
el
objeto
cboCurso
en
el
evento
ActionPerformed (sólo escribe lo que se señala la llave de color rojo).
Pretendemos al momento de seleccionar un curso se muestre la duración del
curso y el costo en los cuadros de textos txtDura y txtCosto respectivamente.
23. Procedemos a programar en el botón de comando QUITAR que se encuentra en
el Tab3 (sólo escribe lo que se señala la llave de color rojo).
Declaramos las variables i, fila y total de tipo entero. La variable fila se le
asigna el valor de la posición de la fila seleccionada en el objeto Jtable llamado
Tabla. Con la sentencia IF se evalúa a la variable fila si es mayor o igual a cero
Ing. Mirko Manrique Ronceros
Página 51
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
procedemos a remover o borrar la fila previamente seleccionada y calculamos la
suma de los precios de todos los cursos mostrándolo en el cuadro de texto
txtPTotal, caso contrario se muestra un mensaje indicando que se debe
seleccionar una fila en la Tabla.
24.
Finalmente, programamos en el botón de comando Cerrar.
25.
Procedemos a ejecutar el formulario.
Ing. Mirko Manrique Ronceros
Página 52
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
OBJETOS MENUS JMENUBAR Y JMENUITEM
Swing Menus
Aquí podemos ver el árbol de herencia de las clases relacionadas con los menús:
Como se ve en la figura, los ítems de menús (incluidos los propios menús) son simples
botones. Podríamos preguntarnos como un menú, si es sólo un botón, muestra sus
ítems. La respuesta es que cuando se activa un menú, automáticamente trae un menú
desplegable que muestra sus ítems.
Crear y congifurar Barras de Menú
Métodos:
•
JMenuBar(): Crea una barra de Menú.
•
setJMenuBar(): Selecciona la barra de menú de un Frame interno.
•
getJMenuBar(): Obtiene la barra de menú de un Frame interno
Crear y rellenar Menús
Métodos:
•
Jmenu(): Crea un Menú a partir de una opción de la barra.
•
add(JMenuItem): Crea un ítem de menú al final del menú.
Ing. Mirko Manrique Ronceros
Página 53
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
•
Programación Visual con Java
insert(): Inserta un ítem de menú o un separador de menú, en la posición
especificada.
•
Remove():Elimina el ítem o ítems especificados del menú. Si el argumento es
un esntero, especifica la posición del ítem a eliminar.
Adición del Menú
Ubicar el cursor en la etiqueta [JFrame], hacer clic en el botón derecho del ratón. Se
desplegará el siguiente menú flotante:
Seleccionamos Add Form Palette (en la versión en castellano debe decir Agregar desde
paleta), luego la opción Swing y finalmente JMenuBar. La interfaz que ese está
desarrollando adopta la siguiente apariencia:
Ing. Mirko Manrique Ronceros
Página 54
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
En el panel de Inspector (Navegador) debe quedar así:
Cambiamos el nombre de de jManuBar1 por jMenuBar_principal y jMenu1 por
jMenu_archivos. Para esto ubicamos el cursor en la etiqueta respectiva, se hace
click botón derecho del mouse y en el menú flotante desplegado seleccionamos
Change Variable Name. El aspecto del panel Inspector (Navegador) debe ser
ahora el siguiente:
Ing. Mirko Manrique Ronceros
Página 55
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Cambiemos ahora el nombre que se despliega en la barra del menú (Menu).
Ubicamos el cursor en la etiqueta el árbol de Inspector sobre jMenu_archivos. Hacer
click botón derecho del mouse; en el menú flotante desplegado, seleccionamos
Properties (en castellano propiedades). Cambiamos en el cuadro desplegado en la
propiedad text, Menu por Archivos. La interfaz gráfica adopta la siguiente forma:
Procedemos a Agregar Ítems al menú Archivos. Ubicamos el cursor en el árbol de
Inpector sobre jMenu_archivos. Hacer click botón derecho del mouse. En el menú
flotante desplegado seleccionemos Add > JMenuItem.
Ing. Mirko Manrique Ronceros
Página 56
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
El panel inspector (navegador) toma la siguiente forma:
Ing. Mirko Manrique Ronceros
Página 57
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Cambiemos el nombre de jMenuItem1 por jMenuItem_abrir.
Si procedemos a compilar y ejecutar la aplicación, vemos que al dar click sobre el
menú Archivos, se observará lo siguiente:
Cambiemos la cadena “Item” desplegada
por la cadena “Abrir”. Ubiquemos el cursor
en
el
árbol
JMenuItem_abrir;
desplegado
de
en
Inspector
el
menú
seleccionemos
sobre
flotante
Properties
(propiedades) y cambiemos en el nuevo
cuadro desplegado en la propiedad text,
Item por Abrir. Al compilar y ejecutar la
aplicación y dando click sobre el menú
Archivos, se observará lo siguiente:
Ing. Mirko Manrique Ronceros
Página 58
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
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 aplicación. El formulario se muestra de la siguiente
manera:
El panel lnspector debe tener ahora el siguiente aspecto:
Vamos a adicionar más menús a la barra de menús. En el árbol de Inspector ubicamos
el cursor sobre jMenuBar y hacer click botón derecho del mouse. En el menú flotante
desplegado escoger Add JMenu. El aspecto de Inspector es el siguiente:
Ing. Mirko Manrique Ronceros
Página 59
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
El aspecto del diseño del formulario queda así:
Ahora procedamos con el diseño del menú dentro del diseño del formulario. Al
momento de que lo ejecutemos debe quedar el diseño del formulario de la siguiente
forma:
Ing. Mirko Manrique Ronceros
Página 60
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Y que el panel Inspector tenga el siguiente aspecto:
Ing. Mirko Manrique Ronceros
Página 61
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
OBJETOS MENUS JRADIOBUTTONMENUITEM,
JSEPARATOR y JMENU
Menus desplegables
Una barra de menú contiene uno o más menús, y tiene una posición 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 acción del
ratón específica de la plataforma, como pulsar el botón derecho del ratón sobre un
componente. Entonces el menú desplegable aparece bajo el cursor.
Crear y congifurar Barras de Menú
Métodos:
•
JMenuBar(): Crea una barra de Menú.
•
setJMenuBar(): Selecciona la barra de menú de un Frame interno.
•
getJMenuBar(): Obtiene la barra de menú de un Frame interno
Crear y rellenar Menús
Métodos:
•
Jmenu(): Crea un Menú a partir de una opción de la barra.
•
add(JMenuItem): Crea un ítem de menú al final del menú.
•
insert(): Inserta un ítem de menú o un separador de menú, en la posición
especificada.
•
Remove():Elimina el ítem o ítems especificados del menú. Si el argumento es
un esntero, especifica la posición del ítem a eliminar.
•
AddSeparator(): Añade un separador al final del menú desplegable.
Implementar Items de Menú
Métodos:
•
JMenuItem(): Crea un ítem en un menú normal.
•
JCheckBoxMenuItem: Crea un ítem de menú que se parece y actúa como un
checkbox.
•
JRadioButtonMenuItem: Crea un ítem de menú que se parece y actúa como un
radio buttom. Se puede hacer uso de un ícono.
Ing. Mirko Manrique Ronceros
Página 62
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
•
Programación Visual con Java
setEnabled(): Si el argumento es true, activa el ítem de menú, si es false lo
desactiva.
Uso de la clase RadioButton
Los Botones de Radio son grupos de botones en los que, por convención, sólo uno de
ellos puede estar seleccionado. Swing soporta botones de radio con las clases
JRadioButton y ButtonGroup. Para poner un botón de radio en un menú, se utiliza la
clase JRadioButtonMenuItem. Los botones de radio tienen un aspecto similar a los
checkboxes, pero, por convención, los checkboxes no tienen límites sobre cuantos
ítems pueden estar seleccionados a la vez. Como JRadioButton desciende de
AbstractButton, los botones de radio Swing tienen todas las caracterísitcas de los
botones normales.
Aquí podemos ver una imagen de una aplicación que utiliza cinco botones de radio
para elegir qué tipo de mascota mostrar:
Uso de la clase CheckBox
La versión Swing soporta botones checkbox con la clase JCheckBox, Swing también
soporta checkboxes en menús, utilizando la clase JCheckBoxMenuItem. Como
JCheckBox y JCheckBoxMenuItem descienden de AbstractButton, los checkboxes
de Swing tienen todas las características de un botón normal
Adicionar items dentro de los ítems
En la sesión anterior (Tema 10), estuvimos desarrollando el diseño de un menú que
quedó su panel de inspector de la siguiente manera:
Ing. Mirko Manrique Ronceros
Página 63
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Ahora vamos a construir un tercer menú algo más complejo. La aplicación una vez
terminado deberá tener las siguientes formas:
Ing. Mirko Manrique Ronceros
Página 64
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Y el panel Inspector debe adoptar la siguiente forma:
Ing. Mirko Manrique Ronceros
Página 65
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Programación Visual con Java
Para lograr esto es necesario adicionar dentro de los JMenu más JMenus. Sólo los
últimos para adicionar en cada rama del árbol del panel Inspector serán los
JMenuItem. Repetir el paso Anterior para que la aplicación una vez ejecutada adopte
la siguiente forma:
Y el panel Inspector se encuentre en el siguiente estado:
Ing. Mirko Manrique Ronceros
Página 66
Universidad Nacional del Santa
Facultad de Ingeniería
E.A.P. Sistemas e Informática
Ing. Mirko Manrique Ronceros
Programación Visual con Java
Página 67
Descargar