Java Netbeans - PBD - IIIP

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 21

UNIVERSIDAD HISPANOAMERICANA

ÉXITO – CALIDAD – EXCELENCIA


FACULTAD DE INGENIERÍA Y COMPUTACIÓN

Programación de Base de Datos


¿Qué es un formulario?

“Trabajo acumulado #1 - IIIP”

Nombre: Br. Zaida Núñez Peña

Carrera: Ingeniería en sistemas

Año: III

Docente: Ing. Armando Joya

Turno: Matutino

Sábado 8 de agosto, 2020.


Los formularios en Java contienen un código asociado que se genera de forma
automática cada vez que se añade un botón para crear una acción o una etiqueta,
de la misma forma este formulario también puede generar un código que permite
cambiar el texto del botón que se va a introducir para así reconocer que tipo de
función realizará ese botón, también cambia el texto de determinada etiqueta. En
Java el concepto de formulario no se limita a los FORM que se encuentran el
HTML y del mundo web en general, desde innumerables años atrás se han
necesitado formularios para la recolección de información relevante sobre una
persona o asunto, a medida que ha pasado el tiempo este concepto se ha ido
adaptando a las diferentes ramas donde el ser humano desempeña funciones y en
especial la programación de computadoras y el internet.

Objetos que debe tener un formulario

 Etiquetas

Las etiquetas (Label) proporcionan una forma de colocar texto estático en un


panel, para mostrar información que no varía, normalmente, al usuario.

El applet Etiqueta.java presenta dos textos en pantalla, tal como aparece en la


figura siguiente:

import java.awt.*;
import java.applet.Applet;

public class Etiqueta extends Applet {

public void init() {


Label etiq1 = new Label( "Hola Java!" );
Label etiq2 = new Label( "Otra Etiqueta" );

setLayout( new FlowLayout( FlowLayout.CENTER,10,10) );


add( etiq1 );
add( etiq2 );
}
}

 Cuadro de texto

Un JTextField o campo de texto es un componente java de la clase swing que crea


un input utilizado para la captura de datos.

Constructores:

JTextField().- Construye un nuevo TextField.


JTextField(Document doc, String text, int columns).- Crea una nueva JTextField
que usa el modelo de almacenamiento de texto dado y el número dado de
columnas.
JTextField(int columns).- Construye un nuevo vacío TextField con el número
especificado de columnas.
JTextField(String text).- Construye un nuevo TextField inicializado con el texto
especificado.
JTextField(String text, int columns).- Construye un nuevo TextField inicializado con
el texto y las columnas especificados.
Ejemplo:
import java.awt.FlowLayout;
import javax.swing.*;
public class Ejemplo {
JTextField texto;
public Ejemplo(){
JFrame ventana = new JFrame("Caja de Texto en Java");
texto = new JTextField(10);
ventana.setLayout(new FlowLayout());
ventana.setSize(450, 400);
ventana.setVisible(true);
ventana.add(texto);
}
public static void main (String[]args){
Ejemplo t = new Ejemplo();
}
}
Listas: cuadros combinados y cuadros de listas

 Cuadros combinados (JComboBox)

Los cuadros combinados o combos (JComboBox) son listas desplegables, que


permiten elegir un sólo elemento de toda la lista.

Los cuadros combinados pueden ser utilizados también como cuadros de texto
activando su propiedad editable, permitiendo de esta manera escribir dentro de
ellos.

Ejemplo de uso práctico de cuadros combinados en NetBeans.

1.- Crea un nuevo proyecto.

2.- Dentro de Source Package crea un Java Package y llamalo paqueteInicial.

3.- Dentro de paqueteInicial crea un JFrame Form y nombralo VentanaInicial.

4.- Dentro de VentanaInicial sigue realizando los siguientes pasos.

5.- Agrega una etiqueta con borde llamada etiPuntoCardinal.

6.- Añade un cuadro combinado (también conocido como combo). Los cuadros


combinados son objetos de la clase JComboBox. Básicamente un combo es una
lista desplegable.
7.- Cambia el nombre al JComboBox por cboPuntosCardinales. El diseño de tu
ventana debe ser el siguiente:

8.- Para cambiar los elementos de cboPuntosCardinales hay que recurrir a su


propiedad model; selecciona el combo en la ventana, luego haz click en el botón
con tres puntos que está a la derecha de su propiedad model, se mostrará lo
siguiente:
9.- Borra los elementos actuales que contiene el combo y escribe los siguientes:

              Este
              Oeste
              Norte
              Sur

10.- Acepta los cambios y ejecuta el programa para que se pueda ver el contenido
del combo.

11.- Al hacer clic en el algún elemento del combo debería mostrarse en la etiqueta
el punto cardinal elegido; para lograr esto tenemos que escribir el siguiente código
en el evento ActionPerformed del cboPuntosCardinales:

    String mensaje = "Punto Cardinal elegido: ";


        
    mensaje = mensaje + cboPuntosCardinales.getSelectedItem().toString();

    etiPuntoCardinal.setText(mensaje);

12.- En la primera línea del código anterior se declara la variable mensaje de tipo


cadena, en esta misma línea se inicializa a dicha variable con el texto: "Punto
Cardinal elegido: ".

13.- En la segunda línea de código se agrega al variable mensaje el texto del item


seleccionado en el combo a través de su método getSelectedItem y convirtiéndo
en texto con toString.

14.- Y en la tercera línea de código se muestra el contenido de la


variable mensaje en la etiqueta etiPuntoCardinal haciendo uso del método setText.

15.- Prueba el funcionamiento del programa ejecutándolo, si seleccionas el


elemento Norte se mostrará la siguiente ventana:

16.- A los combos o cuadros combinados se les puede utilizar además como
cuadros de texto, permitiendo que se pueda escribir texto en ellos, para esto
tenemos que activar su propiedad editable.
17.- Ejecuta el programa y prueba a escribir texto en el cuadro combinado, al
pulsar enter se mostrará en la etiqueta el texto escrito en el combo.

 Cuadros de listas (JList)

El objeto JList permite crear cuadros de lista. Estos objetos contienen una serie de
elementos que pueden ser seleccionados.

A través del método getSelectedValue se puede obtener el elemento que está


seleccionado. (Recuerda convertirlo a cadena con toString)

A través del método getSelectedIndex se puede saber la posición del elemento


seleccionado. Si este índice es -1, entonces sabremos que no hay ningún
elemento seleccionado.

El procedimiento para agregar JList en nuestro ejercicio práctico es el


siguiente:

1. Realiza un nuevo proyecto.

2. En la ventana principal debes añadir lo siguiente:

a. Un botón “Aceptar” llamado btnAceptar.


b. Una etiqueta con borde llamada etiResultado.

3. Añade un cuadro de lista. Los cuadros de listas son objetos JList.


JList en la paleta de Swing

4. Cámbiale el nombre al JList. Ten cuidado, ya que en los JList aparecen siempre
dentro de otro objeto llamado jScrollPane. Si miras en el Inspector, verás que al
pulsar en el botón + del jScrollPane aparecerá tu JList:

JList en el  Inspector

5. Aprovecha para cambiarle el nombre al JList. El nuevo nombre será lstColores.

6. Si te fijas en el JList, consiste en un cuadro que contiene una serie de Items.


Estos elementos pueden ser cambiados a través de la propiedad Model del JList.

7. Busca la propiedad Model y haz clic en el botón de los tres puntos. Aparecerá
un cuadro de diálogo parecido al siguiente. Solo tienes que seleccionar los
elementos que quieras y pulsar el botón “Borrar” (Remove) para eliminarlos de la
lista.

8. Puedes añadir elementos escribiéndolos en el cuadro Artículo y luego pulsando


el botón “Añadir” (Add).
Añadir elementos al JList
9. Debes hacer que la lista sea la siguiente:

Rojo
Verde
Azul

10. Ahora programaremos el actionPerformed del botón Aceptar. Debes introducir


el siguiente código:

String mensaje;
        
mensaje="El color seleccionado es: "+lstColores.getSelectedValue().toString();
   etiResultado.setText(mensaje);

11. Observa el código:

a. Se crea una variable de cadena llamada mensaje.


b. Y dentro de esta variable se introduce una concatenación de cadenas.
c. Observa la parte: lstColores.getSelectedValue(), esta parte devuelve el valor
seleccionado de la lista.
d. Hay que tener en cuenta que este valor no es una cadena, por eso hay que
convertirla a cadena añadiendo .toString().
e. De esta manera puedes extraer el elemento seleccionado de un cuadro de lista.
f. Luego simplemente ponemos la cadena mensaje dentro de la etiqueta.

12. Ejecuta el programa y observa su funcionamiento. Por ejemplo, si seleccionas


el color verde y pulsas aceptar el resultado será el siguiente:
Funcionamiento del JList
13. Vamos a mejorar el programa. Puede suceder que el usuario no seleccione
ningún valor del cuadro de lista, y sería interesante en este caso que el programa
avisara de ello. Cambie el código del botón Aceptar por este otro código:

String mensaje;
        
if (lstColores.getSelectedIndex()==-1) {
   mensaje="No hay un color seleccionado.";
} else {
   mensaje="El color seleccionado es: "+lstColores.getSelectedValue().toString();

etiResultado.setText(mensaje);

14. Observa el código:

a. El método getSelectedIndex me dice el índice del elemento que está


seleccionado.
b. Por ejemplo, si está seleccionado el primero el índice es 0, si está seleccionado
el segundo el índice es 1, etc.
c. Si este método devuelve -1, entonces es señal de que no hay ningún elemento
seleccionado.
d. Aprovecho esto para mostrar un mensaje indicando lo sucedido.

15. Si ejecuta el programa y pulsa el botón Aceptar sin seleccionar nada el


resultado debería ser el siguiente:
Final JList
16. Se podría haber prescindido del botón aceptar si el código anterior se hubiera
puesto en el evento mouseClicked del cuadro de lista en vez de en el
actionPerformed del botón Aceptar. En este caso, cada vez que se seleccionara
un elemento de la lista, automáticamente aparecería el mensaje en la etiqueta.

Casillas de verificación y Botones de radio

 Casillas de verificación - control JCheckBox


 
Estas casillas son las tipicas donde podemos seleccionar varias opciones.
Nosotros vamos a hacer un ejercicio sencillo en el cual simplemente tendremos
dos opciones mediante dos casillas de verificacion, estas casillas seran las
siguentes:
 
[] Azul
[] Verde
 
La casilla que marcaremos saldra reflejada en un JTextField. Mediante el metodo
"isSelected()" le indicaremos el estado en que se encuentra la casilla de
verificacion.
 
import javax.swing.*;
import java.awt.event.*;
 
public class MiVentana extends JFrame implements ActionListener{
 
    JCheckBox cbSeleccionAzul, cbSeleccionVerde;
    JButton btnConfirmar;
    JTextField cmpSeleccion;
 
    public MiVentana(){
        this("Casillas de verificacion",10,10,250,200);
  }
 
    public MiVentana(String titulo, int x, int y, int w, int h){
        super(titulo);
        this.getContentPane().setLayout(null);
        this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);
        this.setBounds(x,y,w,h);
        this.setVisible(true);
 
        cbSeleccionAzul = new JCheckBox("Azul");
            cbSeleccionAzul.setBounds(10,20,100,20);
            this.getContentPane().add(cbSeleccionAzul);
 
        cbSeleccionVerde = new JCheckBox("Verde");
            cbSeleccionVerde.setBounds(10,50,100,20);
            this.getContentPane().add(cbSeleccionVerde);
 
        cmpSeleccion = new JTextField();
            cmpSeleccion.setBounds(10,80,150,20);
            this.getContentPane().add(cmpSeleccion);
 
        btnConfirmar = new JButton("Confirmar");
            btnConfirmar.setBounds(120,130,100,20);
            this.getContentPane().add(btnConfirmar);
 
            btnConfirmar.addActionListener(this);
 
        paintComponents(getGraphics());
  }
 
    public void actionPerformed(ActionEvent event){
        if(event.getSource()==btnConfirmar){
            if(cbSeleccionAzul.isSelected()){
                cmpSeleccion.setText("Seleccionado Azul");
      }
            if(cbSeleccionVerde.isSelected()){
                cmpSeleccion.setText("Seleccionado Verde");
      }
    }
  }
 
    public static void main(String[]args){
 
        MiVentana mv = new MiVentana();
 
  }
}
 
También se puede decir que, una de las casillas quede seleccionada
predeterminada con el método "setSelected()". Por ejemplo, si desea que la
casilla de verificación verde quede seleccionada cuando ejecutamos la aplicación,
dentro del constructor quedara de esta forma:
 
cbSeleccionVerde.setSelected();
 
 Botones de opción (RadioButton)
 
A continuación, se presentan los botones de opción o también llamados botones
de radio, que son un tanto parecidos a las casillas de verificación, pero en este
caso los botones de radio los agruparemos en un grupo con la
clase ButtonGroup. Quiere decir esto, que cuando un botón este seleccionado, el
resto se deseleccionara, para así obtener un solo botón seleccionado.
 
Control JRadioButton
 
Vamos a crear otra aplicación donde veremos el funcionamiento de los botones de
radio. Crearemos tres botones de radio que nos indicaran lo siguiente:
 
o Azul
o Verde
o Amarillo
 
Cuando seleccionemos uno de ellos, los demás se deseleccionaran, y cuando
pulsemos el botón confirmar, en el campo de texto aparecerá la selección que
hemos hecho.
Aquí el código:
 
import javax.swing.*;
import java.awt.event.*;
 
public class MiVentana extends JFrame implements ActionListener{
 
    JTextField cmpSeleccion;
    JButton btnConfirmar;
    JRadioButton rbAzul, rbVerde, rbAmarillo;
    ButtonGroup grupo;
 
    public MiVentana(){
        this("Casillas de verificacion",10,10,250,200);
  }
 
    public MiVentana(String titulo, int x, int y, int w, int h){
        super(titulo);
        this.getContentPane().setLayout(null);
        this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);
        this.setBounds(x,y,w,h);
        this.setVisible(true);
 
        rbAzul = new JRadioButton("Azul");
            rbAzul.setBounds(10,10,80,20);
            this.getContentPane().add(rbAzul);
        rbVerde = new JRadioButton("Verde");
            rbVerde.setBounds(10,30,80,20);
            this.getContentPane().add(rbVerde);
        rbAmarillo = new JRadioButton("Amarillo");
            rbAmarillo.setBounds(10,50,80,20);
            this.getContentPane().add(rbAmarillo);
        grupo = new ButtonGroup();
            grupo.add(rbAzul);
            grupo.add(rbVerde);
            grupo.add(rbAmarillo);
 
        cmpSeleccion = new JTextField();
            cmpSeleccion.setBounds(10,80,150,20);
            this.getContentPane().add(cmpSeleccion);
        btnConfirmar = new JButton("Confirmar");
            btnConfirmar.setBounds(130,130,100,20);
            this.getContentPane().add(btnConfirmar);
 
            btnConfirmar.addActionListener(this);
 
        paintComponents(getGraphics());
  }
 
    public void actionPerformed(ActionEvent event){
        if(rbAzul.isSelected()){
            cmpSeleccion.setText("Radio color Azul");
    }
        if(rbVerde.isSelected()){
            cmpSeleccion.setText("Radio color Verde");
    }
        if(rbAmarillo.isSelected()){
            cmpSeleccion.setText("Radio color Amarillo");
    }
  }
 
    public static void main(String[]args){
 
        MiVentana mv = new MiVentana();
 
  }
}
 
Obsérvese como los tres botones de verificación se encuentran dentro del grupo
que hemos creado. Si no fuese así, los botones serian totalmente independientes.

 Botones de comando

En los programas de Java los desarrolladores pueden usar las bibliotecas Swing y
AWT para crear elementos estándar de interfaz de usuario como botones. La
clase JButton proporciona un botón visible que los desarrolladores pueden añadir
a cualquier interfaz de usuario en Java, ajustando su apariencia y comportamiento
para adaptarla a las necesidades de un proyecto. Los desarrolladores pueden
crear múltiples elementos JButton dentro de un único programa de Java, dando a
cada uno un rol específico según sea necesario.

La función de un JButton es crear un botón visible dentro de una aplicación de


interfaz gráfica de usuario en Java. El JButton permite a los programadores dictar
el texto que aparece en el botón y el momento en el que aparece dentro de la
interfaz general. Usando métodos adicionales dentro del lenguaje Java los
programas también pueden proporcionar respuestas detalladas a la interacción del
usuario con un JButton.

Los JButtons se encuentran entre los muchos elementos de interfaz de usuario


posibles en Java. Otros elementos son las listas desplegables, botones de radio,
etiquetas y casillas de verificación. Los programas de Java necesitan importar los
recursos Swing y AWT necesarios para usar JButtons. Las siguientes
instrucciones import añadidas en la parte superior de una declaración de clase
permiten el uso de la clase JButton:

import javax.swing.; import java.awt.event.;

 Creación

Los programas de Java pueden crear JButtons y añadirlos a elementos visibles de


la interfaz de usuario como JFrames y JPanels. A menudo las declaraciones de
clase para GUIs de Java declaran elementos JButton como variables de instancia
antes del método constructor de la clase, como se muestra a continuación:

private JButton pressButton;

A continuación esta clase de Java puede instanciar la variable JButton dentro del
método constructor como se muestra a continuación:

pressButton = new JButton("Press Me");

El parámetro constructor determina el texto que aparecerá en el botón visible, por


lo que debe ajustarse al propósito del botón dentro de la aplicación.
 Métodos
La clase JButton proporciona diversos métodos, algunos de los cuales son
heredados de clases superiores en la jerarquía, incluyendo JComponent y
AbstractButton. El siguiente código de ejemplo muestra el proceso de añadir un
Action Listener a un JButton: pressButton.addActionListener(this);

Este código funcionaría en cualquier clase que implemente la interfaz


ActionListener. Este método indica a Java que escuche eventos del usuario,
detectando la interacción con el botón. Otros métodos retornan información acerca
de la instancia de JButton y restablecen su apariencia para que se ajuste a la
interfaz del usuario.

 Interacción

Los programas en Java pueden detectar la interacción del usuario con elementos
de botón. Cuando un programa coloca un Action Listener a un JButton, Java
invocará el método "actionPerformed" en la clase cuando ocurra esta interacción.
El método recibe un objeto Action Event como parámetro. Este objeto contiene
información acerca del evento, incluyendo el elemento de la interfaz con el que el
usuario ha estado interactuando. El siguiente código de ejemplo muestra un
programa que lleva a cabo una prueba condicional para determinar si una
instancia JButton particular es la fuente de un Action Event, dentro del método
"actionPerformed": if(e.getSource()==pressButton) { //respond to user interaction }

 Contenedores que agrupan otros controles

Los contenedores son componentes que permiten almacenar, alojar o contener


otros elementos gráficos.....nuevamente mencionamos que es el Tapiz donde
vamos a pintar…

Java Swing provee algunos contenedores útiles para diferentes casos, así cuando
desarrollamos una Ventana podemos decidir de qué manera presentar nuestros
elementos, como serán alojados y de qué forma serán presentados al usuario…

Los contenedores gráficos son componentes gráficos en los cuales


destacamos los siguientes:

 JFrame
Este contenedor es uno de los principales y más usados
(ya lo hemos visto anteriormente), representa la ventana
Principal de nuestra aplicación, en el podemos alojar
otros contenedores.

 JDialog

Este contenedor representa una ventana de tipo


Ventana de diálogo, también puede ser un contenedor
principal aunque es más recomendable dadas sus
propiedades, que sea usada como ventana secundaria,
es decir, un JFrame como ventana Principal y el resto
de ventanas como un JDialog (Ya veremos el porqué). 

 JPanel

Este contenedor es uno de los más simples, permite la


creación de paneles independientes donde se
almacenan otros componentes, de esta manera
decidimos que elementos se alojan en que paneles y
dado el caso podemos usar sus propiedades para
ocultar, mover o delimitar secciones... cuando alojamos
elementos en un panel, los cambios mencionados se
aplican a todo su conjunto...es decir, si nuestro panel
tiene 5 botones y ocultamos solo el panel, los botones también se ocultan....
 
 JScrollPane

Este contenedor permite vincular barras de scroll o


desplazamiento en nuestra aplicación, puede ser
utilizado tanto en paneles como en otros componentes
como un JTextArea, hay que tener en cuenta que no es
simplemente poner un scroll, es alojar el componente
(en este caso panel o área de texto) en
el JScrollPane....

 JSplitPane

Este componente permite la creación de un contenedor


dividido en 2 secciones, muchas veces usado en
aplicaciones donde una sección presenta una lista de
propiedades y otra sección presenta el elemento al que
le aplicamos dicha lista....cada sección puede ser
manipulada por aparte y redimensionar sus
componentes (Mas utilizado cuando se trabaja con
layouts...después lo veremos).
 JTabbedPane
Este tal vez sea otro de los componentes más usados,
permite la creación de una pestañas en nuestra
ventana, cada pestaña representa un contenedor
independiente donde podemos alojar paneles u otros
elementos.

 JDesktopPane

Este contenedor aloja componentes de


tipo JInternalFrame, estos representan ventanas
internas, permitiendo así crear ventanas dentro de una
ventana principal, al momento de su creación podemos
manipular sus propiedades para definir si queremos
redimensionarlas, cerrarlas, ocultarlas entre otras....

También podemos definir una posición inicial de cada


ventana interna, sin embargo después de presentadas
podemos moverlas por toda la ventana Principal donde
se encuentran alojadas.

 JToolBar

Este contenedor representa una Barra de herramientas


dentro de nuestra aplicación, en el podemos alojar
diferentes componentes que consideremos útiles,
botones, check, radios, campos entre otros.......esta
barra de herramientas puede ser manipulada
permitiendo cambiar su ubicación con tan solo
arrastrarla al extremo que queramos, o sacarla de la
ventana para que nuestras opciones se encuentren
como una ventana independiente.

Conectividad de base de datos con JDBC

Java Database Connectivity, más conocida por sus siglas JDBC , es una API que
permite la ejecución de operaciones sobre bases de datos desde el lenguaje de
programación Java, independientemente del sistema operativo donde se ejecute o
de la base de datos a la cual se accede, utilizando el dialecto SQL del modelo de
base de datos que se utilice.
El API JDBC se presenta como una colección de interfaces Java y métodos de
gestión de manejadores de conexión hacia cada modelo específico de base de
datos. Un manejador de conexiones hacia un modelo de base de datos en
particular es un conjunto de clases que implementan las interfaces Java y que
utilizan los métodos de registro para declarar los tipos de localizadores a base de
datos (URL) que pueden manejar. Para utilizar una base de datos particular, el
usuario ejecuta su programa junto con la biblioteca de conexión apropiada al
modelo de su base de datos, y accede a ella estableciendo una conexión; para
ello provee el localizador a la base de datos y los parámetros de conexión
específicos.

A partir de allí puede realizar cualquier tipo de tarea con la base de datos a la que
tenga permiso: consulta, actualización, creación, modificación y borrado de tablas,
ejecución de procedimientos almacenados en la base de datos, etc.

También podría gustarte