UD.
Taller de programación concurrente JAVA Guía N°6 Formulario detalle para una tabla
FORMULARIO DETALLE PARA UNA TABLA PRODUCTOS
Contenidos
En esta guía el estudiante aprenderá a desarrollar/compilar una aplicación que
presentará un formulario JFrame Detalle, que incluye todas las operaciones básicas
de guardar y cancelar los cambios realizados de manera segura.
Objetivo Específico
Conocer el uso las librerías JavaSQL.
Conocer los comandos SQL para realizar una actualización segura.
Cargar una imagen en un JLabel
Agregar la referencia de la imagen a la base de datos.
Materiales y Equipo
En cuanto a las herramientas y software necesario:
JDK
XAMPP
NetBeans
Para esta práctica también es necesario contar con la biblioteca de mysql o mejor dicho el
JDBC Driver de MySql para java como es “mysql-connector-java.jar” que permite
conectar y gestionar la base de datos en MySQL con Java.
Fundamento Teórico
Un formulario detalle es un formulario que permite tener acceso directo a los campos de
la tabla de un registro especifico. Ademas de permitir realizar las operaciones mas
delicadas como son las de actualización.
Aplicación con Formulario Detalle con acceso a datos
Dado que esta aplicación es la continuación de la aplicación Formulario Maestro, entonces
todos los componentes aquí creados corresponderán al mismo paquete.
Pág. 1
UD. Taller de programación concurrente JAVA Guía N°6 Formulario detalle para una tabla
Primero crearemos el formulario Jframe Detalle de producto. Luego crearemos el
formulario JFrame Seleccionar Archivo, que complementa al formulario detalle en la tarea
de agregar una imagen.
Paso 1: Crear un Formulario Detalle para la tabla Productos
1. Dentro del paquete de la aplicación anterior, crear un JFrame Form con el nombre
frmDetalleProducto.
2. Diseñe el formulario de la siguiente manera.
Componente Nombre de la Variable
JTextField Código txtCodigo
JTextField Nombre txtNombre
JTextField Unidad de Medida txtUnidad
JTextField Precio txtPrecio
jComboBox Categoria cboCategoria
JTextField Stock txtStock
JPanel jPanel1
JLabel foto lblfoto
JButton Examinar btnSeleccionarArchivo
JButton Borrar btnBorrarArchivo
JButton Guardar btnGuardar
JButton Cancelar btnCancelar
Paso 4: Codificación general para utilizar los objetos.
● Vamos a proceder a programar. Comenzamos con hacer uso del paquete sql, que
Pág. 2
UD. Taller de programación concurrente JAVA Guía N°6 Formulario detalle para una tabla
nos permitirá tener acceso a la base de datos, luego usaremos el paquete swing,
específicamente a las clases JoptionPane para mostrar los cuadros de dialogo y
para los DefaultTableModel, DefaultComboBoxmodel para los modelos de los
controles JTable y JComboBox.
● Luego procedemos a crear las variables de uso general para la conexión y para el
manejo de la tabla. Esto lo hacemos dentro de la clase frmDetalleProducto.
● En el método constructor programamos lo siguiente (sólo escribe lo que se señala
la llave de color rojo):
Pág. 3
UD. Taller de programación concurrente JAVA Guía N°6 Formulario detalle para una tabla
Con este código configuramos los títulos y asociamos el modelo al JTable. Luego
llamaremos a 2 procedimientos que programaremos despues: el Primero, permite
llenar la tabla con todos los datos de los estudiantes. El segundo permite llenar los
combos desplegables.
Paso 5: Programación de las operación de actualización.
● Este formulario detalle tiene la cualidad de ser sencillo, por lo tanto las únicas
operaciones básicas que se programaran aquí son las de Insertar y Modificar.
● Debido a ambas operación necesitan grabarse en la base de datos, se utilizara un
solo botón llamado btnGuardar, en el cual se programará las dos situaciones
anteriormente descritas. Adicionalmente se utilizara un botón para cancelar y
regresar al Formulario JFrameMaestro que lo llamo.
● En el botón btnGuardar, evento Action Performed, codificaremos lo siguiente:
Pág. 4
UD. Taller de programación concurrente JAVA Guía N°6 Formulario detalle para una tabla
● En el botón btnGuardar, evento Action Performed, codificaremos lo siguiente:
Pág. 5
UD. Taller de programación concurrente JAVA Guía N°6 Formulario detalle para una tabla
● Aquí también podemos notar algo diferente, esto es los dos botones nuevos
Seleccionar y borrar foto. Estos botones hacen uso de un formulario JFrame llamado
frmSeleccionarArchivo, que se programará al final de la guia.
● En el botón btnSeleccionarArchivo, evento Action Performed, codificaremos lo
siguiente:
Pág. 6
UD. Taller de programación concurrente JAVA Guía N°6 Formulario detalle para una tabla
● En el botón btnBorrarArchivo, evento Action Performed, codificaremos lo
siguiente:
● Hasta aquí ya programamos las funcionalidades, solo nos falta programar los
modos de Insercion y Actualizacion que deberá controlar el Formulario Detalle.
Paso 8: Codificación de algunas utilidades reutilizables.
● Para el procedimiento llenarCombos escribimos lo siguiente:
Pág. 7
UD. Taller de programación concurrente JAVA Guía N°6 Formulario detalle para una tabla
● Aprovecharemos el código de la guía anterior para cargar los datos de la tabla
productos, modificamos para que cargue los datos de solo un registro en los
controles JtextField, JComboBox y JLabel.
Pág. 8
UD. Taller de programación concurrente JAVA Guía N°6 Formulario detalle para una tabla
Paso 8: Codificación del formulario Maestro frmMaestroProductos.
● Si revisamos la guía anterior de Formulario Maestro, nos daremos cuenta que los
botones Nuevo y modificar no han sido implementados.
● Entonces abrimos el formulario frmMaestroProductos y codificamos en el botón
Pág. 9
UD. Taller de programación concurrente JAVA Guía N°6 Formulario detalle para una tabla
btnNuevo, evento Action Performed.
● En el botón btnModificar, evento Action Performed del formulario Maestro,
codificaremos lo siguiente:
Paso 8: Creación del formulario Seleccionar Archivo.
● Cree un nuevo Formulario JFrame Form con el nombre de
frmSeleccionaArchivo.
● Agregue un componente JFileChooser al JFrame. El formulario quedara algo
similar a:
Pág. 10
UD. Taller de programación concurrente JAVA Guía N°6 Formulario detalle para una tabla
● Cambie el nombre de componente JFileChooser al de dlgBuscarArchivo.
● Haga clic derecho sobre el componente JFileChooser y seleccione la opción
Customize Code (Personalizar código).
Pág. 11
UD. Taller de programación concurrente JAVA Guía N°6 Formulario detalle para una tabla
Por ultimo copie la carpeta imágenes proporcionada en esta guía dentro de la carpeta de
su proyecto java, asi como se muestra en la imagen.
● Ahora sí, para iniciar la aplicación debe hacerlo desde el formulario
frmMaestroProductos, ya que este es el que invoca a los dos creados en esta
guía.
Pág. 12