Acceso a un Sistema. Parte I de II
Enviado por legnaysteb • 13 de Enero de 2013 • 4.499 Palabras (18 Páginas) • 516 Visitas
Acceso a un Sistema. Parte I de II
Bueno, voy a intentar explicar cómo hacer un sistema de acceso sencillo a un programa, lo que normalmente conocemos en inglés como "login".
El esquema del programa es muy básico:
Supongo que esta entrada es muy básica, pero me lo ha pedido un compañero de forosdelweb y bueno, he decidido hacerlo, aunque no voy a incluir contraseñas cifradas ni nada por el estilo, todo muy básico puesto que esto va destinado a personas que se están iniciando.
La estructura del programa será este:
1.
La clase principal contendrá únicamente la llamada a la ventana principal:
package principal;
2.
3. import javax.swing.JFrame;
4.
5. import interfaz.VentanaPrincipal;
6.
7. public class Principal {
8.
9.
10. public static void main(String[] args) {
11.
12. VentanaPrincipal vP = new VentanaPrincipal();
13. vP.pack();
14. vP.setVisible(true);
15. vP.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
16.
17. }
18.
19. }
1.
Ahora vamos con Ventana Principal. En esta ventana tendremos 2 etiquetas (JLabel) y 2 Campos de Texto (JTextField). Si se pulsa sobre Aceptar, conectaremos con la Base de Datos, en mi caso Mysql.
Aquí el contenido de VentanaPrincipal.java
package interfaz;
2.
3. import java.awt.BorderLayout;
4. import java.awt.Color;
5. import java.awt.FlowLayout;
6. import java.awt.GridLayout;
7. import java.awt.LayoutManager;
8. import java.awt.Panel;
9. import java.awt.event.ActionEvent;
10. import java.awt.event.ActionListener;
11.
12. import javax.swing.BorderFactory;
13. import javax.swing.ImageIcon;
14. import javax.swing.JButton;
15. import javax.swing.JFrame;
16. import javax.swing.JLabel;
17. import javax.swing.JOptionPane;
18. import javax.swing.JPanel;
19. import javax.swing.JPasswordField;
20. import javax.swing.JTextField;
21.
22. public class VentanaPrincipal extends JFrame {
23.
24. //VARIABLES
25. private JButton btAceptar, btSalir;
26. private JLabel lUsuario, lPass, lImagen;
27. private JTextField tUsuario;
28. private JPasswordField tPass;
29. private JPanel pUsuarios, pImagen;
30. private VentanaPrincipal vP;
31.
32. public VentanaPrincipal(){
33.
34. this.setTitle("Conexión con la Aplicación");
35. this.setLocationRelativeTo(null);
36.
37. vP = this;
38.
39. this.setResizable(false);
40. this.setLocationRelativeTo(null);
41.
42. FlowLayout fl = new FlowLayout();
43. this.setLayout(fl);
44.
45. // FUNCIONES
46.
47. CrearInterfaz();
48.
49. Escuchadores();
50. }
51.
52. private void CrearInterfaz(){
53.
54. //PANEL ACCESO USUARIOS
55.
56. pUsuarios = new JPanel();
57.
58.
59. // GESTOR DE LA VENTANA EN PARRILLA
60. GridLayout gridLayout1 = new GridLayout();
61. gridLayout1.setRows(3);
62. gridLayout1.setHgap(20);
63. gridLayout1.setColumns(2);
64. gridLayout1.setVgap(10);
65.
66. //ESTABLECER EL GESTOR
67. pUsuarios.setLayout(gridLayout1);
68.
69. this.add(pUsuarios, null);
70.
71.
72. lUsuario = new JLabel("Usuario: ");
73. lPass = new JLabel("Contraseña: ");
74.
75. tUsuario = new JTextField();
76. tPass = new JPasswordField();
77.
78. btSalir = new JButton("Salir");
79. btAceptar = new JButton("Aceptar");
80.
81. pUsuarios.add(lUsuario);
82. pUsuarios.add(tUsuario);
83. pUsuarios.add(lPass);
84. pUsuarios.add(tPass);
85. pUsuarios.add(btAceptar);
86. pUsuarios.add(btSalir);
87.
88.
89. //PANEL IMAGEN
90.
91. pImagen = new JPanel();
92.
93.
94. this.add(pImagen, null);
95.
96.
97. lImagen = new JLabel(newImageIcon(getClass().getResource("/images/candado.png")));
98.
99. pImagen.add(lImagen);
100.
101.
102. }
103.
104. private void Escuchadores(){
105.
106. btSalir.addActionListener(new ActionListener() {
107.
108. @Override
109. public void actionPerformed(ActionEvent arg0) {
110. System.exit(0);
111.
112. }
...