Vous êtes sur la page 1sur 17

Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas

Asignatura: Programacin Visual

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 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

Asignatura: Programacin Visual

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

Asignatura: Programacin Visual

ventana de propiedades como se muestra en la imagen seleccionamos a la propiedad Border.

Click!

Nos mostrar la siguiente imagen

1. Seleccionar TitledBorder

2. Colocar en Title: Seleccione un Color

3. Click en Ok y Listo

Bien tendremos esto:

Elaborado por: Ing. Martn Gustavo Salcedo Quiones

Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas

Asignatura: Programacin Visual

Propiedad ms usada:

Border: Se establece el borde y el ttulo si fuese necesario.

Mtodo ms 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 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

Si colocamos el siguiente cdigo en el botn de comando Mostrar:


private void BtnMostrarActionPerformed(java.awt.event.ActionEvent evt) { lblTexto.setText(Observa que el cdigo de ejemplo selecciona el tamao preferido del contenedor del panel desplazable. Una alternativa sera seleccionar el tamao preferido

Elaborado por: Ing. Martn Gustavo Salcedo Quiones

Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas

Asignatura: Programacin Visual

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); }

Para el botn 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.

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).

Elaborado por: Ing. Martn Gustavo Salcedo Quiones

Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas

Asignatura: Programacin Visual

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.

3. A continuacin, colocaremos como nombre de formulario frmPeliculas.

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

Asignatura: Programacin Visual

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.

6. Colocamos un objeto contenedor JPanel por debajo de la expresin PELICULA:.

Elaborado por: Ing. Martn Gustavo Salcedo Quiones

Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas

Asignatura: Programacin Visual

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.

Elaborado por: Ing. Martn Gustavo Salcedo Quiones

Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas

Asignatura: Programacin Visual

8. Seleccionamos la propiedad Border y damos click en el botn de comando correspondiente a sta propiedad.

9. A continuacin, seleccionamos como borde disponible a TitledBorder.

Elaborado por: Ing. Martn Gustavo Salcedo Quiones

Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas

Asignatura: Programacin Visual

10. En ttulo colocamos Categoras de Pelculas.

11. Ahora procedemos a definir el borde (propiedad que se encuentra encima de Ttulo).

Elaborado por: Ing. Martn Gustavo Salcedo Quiones

10

Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas

Asignatura: Programacin Visual

12. Posteriormente, seleccionamos el tipo de Borde EtchedBorder.

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.

Elaborado por: Ing. Martn Gustavo Salcedo Quiones

11

Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas

Asignatura: Programacin Visual

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.

Elaborado por: Ing. Martn Gustavo Salcedo Quiones

12

Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas

Asignatura: Programacin Visual

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.

Elaborado por: Ing. Martn Gustavo Salcedo Quiones

13

Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas

Asignatura: Programacin Visual

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.

Elaborado por: Ing. Martn Gustavo Salcedo Quiones

14

Universidad los ngeles de Chimbote Facultad de Ingeniera Escuela Profesional de Ingeniera de Sistemas

Asignatura: Programacin Visual

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

Asignatura: Programacin Visual

seala la llave de color rojo).

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

Asignatura: Programacin Visual

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.

28. Procedemos a ejecutar el formulario.

Elaborado por: Ing. Martn Gustavo Salcedo Quiones

17

Vous aimerez peut-être aussi