Ejemplo de un programa sencillo en Java, en formulario

USAR JLABEL Y JTEXTFIELD EN JAVA.-


En las lineas esta comentareado el uso de cada una, allí encontraran donde se crean, se añaden y se usan específicamente cada una, no sobra recordar que es importante añadir las librerías que están desde la linea 2 hasta la 10 para que funcione el siguiente ejemplo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
//librerias necesarias
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
 
public class GuiJava implements ActionListener{//implementando el listener de eventos
 
    JButton bt1;//creando variables globales de los botones
    JLabel jl1, jl2, jl3;//creando variables globales para las etiquetas
    JTextField jt1, jt2, jt3;//creando variables globales para los campos de texto
    JFrame jf = new JFrame("Formulario Basico Java");//creacion de ventana con el titulo
 
    public GuiJava(){//constructor de la clase        
 
        jf.setLayout(new FlowLayout());//Configurar como se dispondra el espacio del jframe
        Dimension d = new Dimension();//objeto para obtener el ancho de la pantalla
 
        //Instanciando etiquetas
        jl1 = new JLabel("Numero 1");
        jl2 = new JLabel("Numero 2");
        jl3 = new JLabel("=");
 
        //Instanciando cuadros de texto
        jt1 = new JTextField(2);
        jt2 = new JTextField(2);
        jt3 = new JTextField(2);
 
        //Instanciando boton con texto
        bt1 = new JButton("+");
 
        //añadiendo objetos a la ventana
        jf.add(jl1); jf.add(jt1); jf.add(bt1); jf.add(jl2); jf.add(jt2);
        jf.add(jl3); jf.add(jt3);
 
        //margenes para texto en boton
        bt1.setMargin(new Insets(1, 5, 1, 5));
 
        //añadiendo el listener a los botones para manipular los eventos del click
        bt1.addActionListener(this);        
 
        jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//finaliza el programa cuando se da click en la X        
        jf.setResizable(false);//para configurar si se redimensiona la ventana
        jf.setLocation((int) ((d.getWidth()/2)+290), 50);//para ubicar inicialmente donde se muestra la ventana (x, y)
        jf.setSize(400, 250);//configurando tamaño de la ventana (ancho, alto)
        jf.setVisible(true);//configurando visualización de la venta
    }
 
    public static void main(String[] args) {        
        GuiJava gj = new GuiJava();//uso de constructor para la ventana
    }
 
    @Override
    public void actionPerformed(ActionEvent e) {//sobreescribimos el metodo del listener
 
        int n1, n2, nr;//variables que almacenaran los numeros de los campos de texto
 
        if(e.getSource()==bt1){//podemos comparar por el contenido del boton
 
            //Los campos de texto son de tipo string, asi que tomamos la cadena con el metodo .getText()
            //y lo almacenamos en la variable.
            n1 = Integer.parseInt(jt1.getText());
            n2 = Integer.parseInt(jt2.getText());
 
            nr = n1 + n2; //realizamos la operacion
 
            jt3.setText(""+nr);/*mostramos el valor mediante el metodo .setText() como muestra cadenas
             anteponemos una cadena vacia y concatenamos el resultado*/
        }        
    }

El ejemplo anterior realiza una suma, cabe aclarar que no se han validado los campos, esto lo explicare con detalle mas adelante, como lo dice el titulo es un formulario básico 😉 Una vez ejecutado veremos lo siguiente:

Formulario básico en java


Como vemos es algo realmente básico, podremos configurar algunas cosas y lo mejoraremos bastante para el usuario, así que con el siguiente código se podrán apreciar las modificaciones necesarias para lo anterior.


Formulario personalizado en java


PERSONALIZANDO FORMULARIO


Como vemos la disposición inicial del JFrame con los objetos es cuando se agreguen así mismo se ubican, pero que si queremos controlar la posición y el tamaño, también vemos que en la anterior imagen al momento de escribir nos aparece al lado izquierdo, pero si queremos cambiar la orientación de escritura.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
//librerias necesarias
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
 
public class GuiJava implements ActionListener{//implementando el listener de eventos
 
    JButton bt1;//creando variables globales de los botones
    JLabel jl1, jl2, jl3;//creando variables globales para las etiquetas
    JTextField jt1, jt2, jt3;//creando variables globales para los campos de texto
    JFrame jf = new JFrame("Formulario Basico Java");//creacion de ventana con el titulo
 
    public GuiJava(){//constructor de la clase        
 
        jf.setLayout(null);//Configurar como se dispondra el espacio del jframe
        Dimension d = new Dimension();//objeto para obtener el ancho de la pantalla
 
        //Instanciando etiquetas
        jl1 = new JLabel("Numero 1");
        jl2 = new JLabel("Numero 2");
        jl3 = new JLabel("=");
 
        //Instanciando cuadros de texto
        jt1 = new JTextField(2);
        jt2 = new JTextField(2);
        jt3 = new JTextField(2);
 
        //Instanciando boton con texto
        bt1 = new JButton("+");
 
        //Ubicando los objetos a nuestro gusto
        jl1.setBounds(30, 40, 60, 25); jt1.setBounds(100, 40, 40, 25);
        bt1.setBounds(185, 40, 25, 25);
        jl2.setBounds(235, 40, 60, 25); jt2.setBounds(295, 40, 40, 25);        
        jl3.setBounds(30, 85, 60, 25); jt3.setBounds(100, 85, 40, 25);
 
        //Cambiando horientacion texto
        jt1.setHorizontalAlignment(JTextField.RIGHT); jt2.setHorizontalAlignment(JTextField.RIGHT);
        jt3.setHorizontalAlignment(JTextField.RIGHT);
 
        //Cambiando color, tamaño del borde, como tambien redondeandolo
        jt1.setBorder(BorderFactory.createLineBorder(Color.red, 2, true));
        jt2.setBorder(BorderFactory.createLineBorder(Color.red, 2, true));
        jt3.setBorder(BorderFactory.createLineBorder(Color.red, 2, true));
 
        //ocultando el jlabel y el jtextfield del resultado
        jl3.setVisible(false); jt3.setVisible(false);
 
        //añadiendo objetos a la ventana
        jf.add(jl1); jf.add(jt1); jf.add(bt1); jf.add(jl2); jf.add(jt2);
        jf.add(jl3); jf.add(jt3);
 
        //margenes para texto en boton
        bt1.setMargin(new Insets(1, 5, 1, 5));
 
        //añadiendo el listener a los botones para manipular los eventos del click
        bt1.addActionListener(this);        
 
        jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//finaliza el programa cuando se da click en la X        
        jf.setResizable(false);//para configurar si se redimensiona la ventana
        jf.setLocation((int) ((d.getWidth()/2)+290), 50);//para ubicar inicialmente donde se muestra la ventana (x, y)
        jf.setSize(400, 250);//configurando tamaño de la ventana (ancho, alto)
        jf.setVisible(true);//configurando visualización de la venta
    }
 
    public static void main(String[] args) {        
        GuiJava gj = new GuiJava();//uso de constructor para la ventana
    }
 
    @Override
    public void actionPerformed(ActionEvent e) {//sobreescribimos el metodo del listener
 
        int n1, n2, nr;//variables que almacenaran los numeros de los campos de texto
 
        if(e.getSource()==bt1 && jt3.getText().equals("")){//podemos comparar por el contenido del boton
 
            //Los campos de texto son de tipo string, asi que tomamos la cadena con el metodo .getText()
            //y lo almacenamos en la variable.
            n1 = Integer.parseInt(jt1.getText());
            n2 = Integer.parseInt(jt2.getText());
 
            nr = n1 + n2; //realizamos la operacion
 
            //mostrando los objetos donde se mostrara el resultado
            jl3.setVisible(true); jt3.setVisible(true);
 
            jt3.setBackground(Color.lightGray);
            jt3.setText(""+nr);/*mostramos el valor mediante el metodo .setText() como muestra cadenas
             anteponemos una cadena vacia y concatenamos el resultado*/
        }
        else{
            jt1.setText(""); jt2.setText(""); jt3.setText("");
            jl3.setVisible(false); jt3.setVisible(false);
        }
    }
}


Los cambios se han hecho en la linea 22 donde se toma todo el JFrame para ubicar los objetos a nuestro gusto; las lineas de la 38 a la 54 son las que hemos modificado algunas características de los JLabel y JTextField; en el método sobre escrito para el evento del botón se hizo una modificación, es mas parte de lógica que del objetivo del post, así quedara con las modificaciones:

Formulario personalizado en java

Si ejecutas el segundo ejemplo veremos como algo de lógica y un retoque por aquí y otro por allá harán una aplicación sencilla en algo llamativo.



Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de lenguagevisual.blospot.mx . El objetivo de lenguagevisual.blospot.mx es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de lenguagevisual.blospot.mx  como fuentes de información.
Fuente: http://lenguagevisual.blogspot.mx/p/ejemplo-de-un-programa-sencillo-en-java.html



0 comentarios:

Publicar un comentario