Académique Documents
Professionnel Documents
Culture Documents
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 aplicacin. 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. Elaborado por: Ing. Martn Gustavo Salcedo Quiones
1
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
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.
Despus de hacer esto soltamos y si hacemos click en otro lado del rea del formulario ntese 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
Elaborado por: Ing. Martn Gustavo Salcedo Quiones
2
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
Click!
1. Seleccionar TitledBorder
3. Click en Ok y Listo
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
Propiedad ms usada:
Mtodo ms usado:
Objeto Contenedor JScrollPanel Un objeto ScrollPanel permite ubicar dentro de ella uno o varios objetos que comnmente 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 posicin otro componente dentro del Jpanel. Haremos que cuando cargue el formulario cargue un texto dentro de un Frame
BtnMostrar JPanel
BtnClear JScrollPanel
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
del propio panel desplazable. De cualquier modo, se est limitando el tamao del panel desplazable. Esto es necesario porque el tamao preferido de un panel desplazable es ser tan grande como pueda); }
Aplicacin Construye una aplicacin que permita ingresar el ttulo de una pelcula, seleccionar su categora que puede ser Comedia, accin, Dibujos animados o Drama. Adems se debe ingresar la duracin en minutos de la pelcula 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 nmero de pelculas ingresadas. Solucin: 1. Creamos un proyecto denominado Ejercicios.
Luego dar click en el botn de comando Finish (Terminar si el entorno de NetBeans es en castellano).
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
2. Estando en el entorno de NetBeans, seleccionamos el paquete ejercicios y dando click botn derecho del mouse se muestra un men flotante, donde seleccionamos Formulario Jframe.
Luego dar click en el botn de comando Finish (en caso de que la versin de
Elaborado por: Ing. Martn Gustavo Salcedo Quiones
6
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
NetBeans es en castellano entonces dar click en el botn de comando Terminar) 4. Se muestra el entorno de desarrollo de NetBeans y no olvidemos de dar click en el botn derecho del mouse sobre el formulario y establece AbsoluteLayout en SetLayout.
5. Procedemos a colocar un objeto de control Jlabel con la expresin PELICULA: y al lado derecho un cuadro de texto JTextField.
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
7. Procedemos a utilizar la ventana de propiedades del objeto Jpanel. No vamos a usar la ficha de propiedades que se encuentra al lado derecho del diseo del formulario, sino que seleccionamos al objeto JPanel y luego al dar click botn derecho del mouse, seleccionamos la opcin propiedades.
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
8. Seleccionamos la propiedad Border y damos click en el botn de comando correspondiente a sta propiedad.
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
11. Ahora procedemos a definir el borde (propiedad que se encuentra encima de Ttulo).
10
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
13. Luego de dar click en el botn de comando OK, queda definido el Borde y el ttulo.
14. Volvemos a dar click en el botn de comando OK y regresamos a la ventana de propiedades del JPanel.
11
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
Cerrar sta ventana usando el botn de comando Close (Cerrar). 15. El diseo 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.
12
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
17. Colocamos cuatro objetos de tipo JRadioButton dentro del objeto Panel, quedando el diseo del formulario as:
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 segn observamos en el diseo del formulario. Esta vez vas a agregar un objeto JScrollPanel para colocar dentro de ella a un objeto JTable.
13
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
20. A continuacin colocamos un objeto JTable. Los nombres de los objetos de control son tal como se aprecia en el siguiente diseo de formulario.
14
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
21. Vamos a proceder a programar. Comenzamos con hacer uso del paquete swing y especficamente a las clases JOptionPane y a la clase JTable.
22. 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 dtm del tipo DefaultTableModel. 23. En el mtodo constructor programamos lo siguiente (slo escribe lo que se seala 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 Ttulo de la Pelcula, Categora, Duracin(min) y Actor Principal, 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). Se vincula el modelo, representado en la variable dtm, al objeto JTable llamado Tabla. Inhabilitamos los objetos indicados en la programacin y damos el enfoque al botn de comando Nuevo. 24. Procedemos a programar en el botn de comando Nuevo (slo escribe lo que se
Elaborado por: Ing. Martn Gustavo Salcedo Quiones
15
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
25. Procedemos a programar en el botn de comando Agregar (slo escribe lo que se seala la llave de color rojo).
Declaramos una variable de memoria llamada datos de tipo String y de tamao 4. Tambin 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 ttulo de la pelcula). A continuacin, se hace uso de sentencias selectivas IF
Elaborado por: Ing. Martn Gustavo Salcedo Quiones
16
Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas
para evaluar cul de los objetos JRadioButton ha sido seleccionado y segn el objeto seleccionado se asigna la categora 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 duracin y el actor principal respectivamente. Con el mtodo 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 mtodo getRowCount() de la variable objeto dtm. Este ltimo valor conseguido es visualizado en el cuadro de texto txtTotal a travs del mtodo setText(). 26. Luego, procedemos a programar en el botn de comando Eliminar (slo escribe lo que se seala la llave de color rojo).
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 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 mtodo setRowCount() perteneciente a dtm. 27. Finalmente, programamos en el botn de comando Cerrar.
17