Utilice Java para diseñar una página de inicio de sesión sin conectarse a la base de datos. Solo necesita almacenar la información de usuario y contraseña en el texto.
/* Main.java
*
* Creado el __DATE__, __TIME__
*/
importar javax.swing.JOptionPane;
/**
*
* @author __USER__
*/
public class Main extiende javax.swing.JFrame {
/** Crea un nuevo formulario Main */
public Main() {
initComponents();
}
/** Este método se llama desde el constructor para
* inicializar el formulario.
* ADVERTENCIA: No NO modifique este código. El contenido de este método es
* siempre regenerado por el Editor de formularios.
*/
//GEN-BEGIN:initComponents<. /p>
//
private void initComponents() {
jPanel1 = nuevo javax.swing .JPanel(); //Etiqueta
jLabel1 = nuevo javax.swing.JLabel();
jLabel2 = nuevo javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jButton1 = new javax.swing.JButton(); //Botón de inicio de sesión
jButton2 = new javax.swing.JButton( ); //
jTextField1 = nuevo javax.swing.JTextField(); //Cuadro de texto
jTextField2 = nuevo javax.swing.JTextField();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); //Operación al cerrar, es decir, salir del programa
setTitle("Interfaz de inicio de sesión"); //Establecer título: Bienvenido al sistema de gestión de stock.
setResizable(false); //Configura la ventana para que no sea redimensionable
jLabel1.setFont(new java.awt.Font("Microsoft Yahei", 0, 18)) ; //Establece la fuente de la etiqueta
jLabel1
.setText("Hola, ingresa información");
jLabel2.setText("Nombre de usuario");
jLabel3.setTex
t("Contraseña de usuario");
jButton1.setText("Iniciar sesión");
jButton1.addActionListener(new java.awt.event.ActionListener() { //Anónimo Interno clase para implementar la función de escucha del botón
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
} p >
});
jButton2.setText("Salir");
jButton2.addActionListener(new java.awt.event.ActionListener() { //Igual que el anterior
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
}) ;
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout( // Administrador de diseño jerárquico, el código n largo a continuación es para establecer la posición, compruébelo usted mismo, jaja, esto es necesario. no Escribí más
jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout
.setHorizontalGroup(jPanel1Layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
.addContainerGap(159, Short.MAX_VALUE)
.addComponent(jLabel1).addGap(140, 140,
140))
.addGroup(
jPanel1Layout
.createSequentialGroup()
.addGap(110, 110, 110)
.addGroup(
jPanel1Layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel2)
.addComponent(jLabel3))
.addGap(54, 54, 54)
.addGroup( p>
jPanel1Layout
.createParallelGroup(
javax.s
wing.GroupLayout.Alignment.LEADING)
.addGroup(
jPanel1Layout
.createSequentialGroup()
.addComponent(
jTextField2,
javax.swing.GroupLayout.DEFAULT_SIZE,
191,
Short.MAX_VALUE)
.addGap (
112,
112,
112))
.addGroup(
jPanel1Layout
.createSequentialGroup()
.addComponent(
jTextField1,
javax.swing.GroupLayout.PREFERRED_SIZE,
191 ,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())))
.addGroup(
jPanel1Layout p>
.createSequentialGroup()
.addGap(141, 141, 141)
.addComponent(
jButton1,
javax.swing.GroupLayout.PREFERRED_SIZE,
68,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(89, 89, 89)
.addComponent(
jButton2,
javax.swing.GroupLayout.PREFERRED_SIZE,
72,
javax .swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(145, Short.MAX_VALUE)));
jPanel1Layout
.setVerticalGroup(jPanel1Layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(
jPanel1Layout
.createSequentialGroup( )
.addContainerGap()
.addComponent(jLabel1)
.addGap(55, 55, 55)
.addGroup(
jPanel1Layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.L
EADING)
.addComponent(jLabel2)
.addComponent(
jTextField1,
javax.swing.GroupLayout.PREFERRED_SIZE, p> p>
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(41, 41, 41)
.addGroup(
jPanel1Layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.BASELINE)
. addComponent( jLabel3)
.addComponent(
jTextField2,
javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout .DEFAULT_SIZE ,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(43, 43, 43)
.addGroup(
jPanel1Layout
.createParallelGroup(
javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(
jButton1,
javax.swing.GroupLayout.PREFERRED_SIZE,
33,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent( p>
jButton2,
javax.swing.GroupLayout.PREFERRED_SIZE,
33,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(48, Short.MAX_VALUE)));
javax.swing.GroupLayout diseño = new javax.swing.GroupLayout(
getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(layout.createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING).addGroup(
p>diseño.createSequentialGroup().addContainerGap().addComponent(
jPanel1, javax.swing
.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap()));
layout.setVerticalGroup(layout .createParallelGroup(
javax.swing.GroupLayout.Alignment.LEADING).addGroup(
diseño.createSequentialGroup().addContainerGap().addComponent(
jPanel1 , javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(javax .swing.GroupLayout.DEFAULT_SIZE,
Short.MAX_VALUE)));
pack();
setLocationRelativeTo(null); //Centrado
}//
//GEN-END:initComponents
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { // Manejo de eventos, esto no se recomienda
// TODO agrega tu código de manejo aquí:
String name = this.jTextField1.getText().trim() //Obtener el usuario nombre, elimine los espacios
String contraseña = this.jTextField2.getText().trim() //Obtenga la contraseña, elimine los espacios
if (name.equals(" admin") && contraseña.equals("123456")) { //Si se cumplen las condiciones... en realidad, esto debería estar asociado con la base de datos, esto es un código inactivo
// Showinformation sf= new Showinformation(); / /Supongo que es otro fotograma, el fotograma después de iniciar sesión correctamente
// sf.setVisible(true);
// sf.show(); //Este método es de eliminación instantánea directa, no es necesario, porque se ha llamado a sf.setVisible(true) y se ha realizado varias veces aquí
} else { //Error en la verificación del nombre de usuario o contraseña p>
JOptionPane .showMessageDialog(this, "El nombre de usuario o contraseña es incorrecto~", "Preguntar", //Cuadro de aviso
JOptionPane.INFORMATION_MESSAGE);
esto. jTextField1.setText("" ); //Borrar el cuadro de entrada
this.jT
extField2.setText("");
}
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) { //Procesamiento de eventos, De hecho, jButton1ActionPerformed se puede procesar en conjunto. Simplemente obtenga el contenido de la etiqueta del botón (JButton) (evt.getSuorse()).getText() y compárelo.
// TODO agregue su código de manejo aquí. :
System.exit(0);
}
/**
* @param argumenta los argumentos de la línea de comando p>
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() { //Buen método, Jaja, la razón para usar este método es: awt está en modo de un solo subproceso y solo se puede acceder a todos los componentes de awt en el subproceso de procesamiento de eventos (método recomendado), lo que garantiza la determinabilidad de cada instancia del estado del componente en el núcleo de Java. Tecnología de programación toda utilizada
public void run() {
new Main().setVisible(true);
}
}) ;
}
//GEN-BEGIN:variables
// Declaración de variables - no modificar
javax privado. swing.JButton jButton1;
privado javax.swing.JButton jButton2;
privado javax.swing.JLabel jLabel1;
privado javax.swing.JLabel jLabel2;
p>javax.swing.JLabel jLabel3 privado;
javax.swing.JPanel jPanel1 privado;
javax.swing.JTextField privado jTextField1;
private javax.swing.JTextField jTextField2;}
// Declaración de fin de variables//GEN-END:variables
Puedes modificarlo. desde el Bloc de notas y emita un juicio