Estoy buscando urgentemente un código fuente simple de Java (interfaz de operación de nombre de usuario y contraseña)
El siguiente programa se puede compilar y ejecutar directamente, y puede encontrar los segmentos de código que desea utilizar.
importar java.awt.GridLayout;
importar java.awt.event.ActionEvent;
importar java.awt.event.ActionListener;
importar java.awt.event.FocusEvent;
importar java.awt.event.FocusListener;
importar java.io.File;
importar java.io.IOException;
importar java.io.RandomAccessFile;
importar javax.swing.BoxLayout;
importar javax.swing.JFrame; p>
p>
importar javax.swing.JLabel;
importar javax.swing.JPanel;
importar javax.swing.JPasswordField;
import javax.swing.JTextField;
La clase pública UserLogin extiende JPanel implementa ActionListener{
JTextField userjt=null //Cuadro de entrada del usuario
JPasswordField pwdjt; =null;
p>JTextField sysUserjt=null; //El sistema muestra el cuadro de entrada del nombre de usuario
JTextField sysPwdjt=null;
public UserLogin() {
super (new GridLayout(1, 2));
JPanel userPanel=new JPanel(); //Interfaz de usuario, izquierda
userPanel.setLayout (new BoxLayout(userPanel, BoxLayout.Y_AXIS ));
this.add(userPanel);
JPanel userUpPanel=new JPanel();//La parte superior de la interfaz de usuario
userPanel.add( userUpPanel);
JPanel userDownPanel=new JPanel();//parte inferior de la interfaz de usuario
userPanel.add(userDownPanel) ;
JPanel sysPanel=new JPanel(); //Interfaz del sistema, lado derecho
sysPanel.setLayout(new BoxLayout(sysPanel, BoxLayout.Y_AXIS));
this.add(sysPanel);
JPanel sysUserPanel=new JPanel(); //La parte superior de la interfaz del sistema
sysPanel.add(sysUserPanel);
JPanel sysPwdPanel=nuevo JPanel();/
/Parte inferior de la interfaz del sistema
sysPanel.add(sysPwdPanel);
userjt=new JTextField(5);
userjt.setText("nombre de usuario"
userUpPanel.add(userjt);
pwdjt=new JPasswordField(5);
pwdjt.setText("contraseña"); >
pwdjt.setEchoChar('\0');
userDownPanel.add(pwdjt);
JLabel sysUserjl=new JLabel("Nombre de usuario: ");
sysUserPanel.add(sysUserjl);
sysUserjt=new JTextField(5);
sysUserPanel.add(sysUserjt
JLabel sysPwdjl=; new JLabel("La contraseña es: ");
sysPwdPanel.add(sysPwdjl);
sysPwdjt=new JTextField(5);
sysPwdPanel add( sysPwdjt);
userjt.addActionListener(this);
pwdjt.addActionListener(this);
userjt.addFocusListener(new FocusListener(){
public void focusGained(FocusEvent e) {
if(userjt.getText().equals("nombre de usuario"))
userjt.setText("" ); /p>
}
public void focusLost(FocusEvent e) {
if(userjt.getText().equals(""))
userjt.setText("nombre de usuario");
}});
pwdjt.addFocusListener(new FocusListener(){
public void focusGained (FocusEvent e) {
if(new String(pwdjt.getPassword()).equals("contraseña")){
pwdjt.setText("");
pwdjt.setEchoChar('*');
}
}
public void focusLost(FocusEvent e) {
if(new String(pwdjt.getPassword()).equals("")){
pwdjt.setText("contraseña");
pwdjt.setEchoCh
ar('\0');
}
}});
}
public void actionPerformed(ActionEvent e) {
if(e.getSource().equals(userjt)){
pwdjt.requestFocus()
}else{
if(new String(pwdjt.getPassword()).equals("")||userjt.getText().equals("")||userjt.getText().equals("nombre de usuario")) return;< / p>
sysUserjt.setText(userjt.getText());
sysPwdjt.setText(new String(pwdjt.getPassword()));
prueba {
p>writetoFile();
} catch (IOException e1) {
System.out.println("¡Se produjo una excepción al escribir el archivo!"); /p>
e1.printStackTrace();
}
}
}
private void writetoFile() lanza IOException { p>
Archivo f=new File("User_Psd.txt");
// if(!f.exists()) f.createNewFile();
RandomAccessFile accessFile=new RandomAccessFile(f, "rw");
accessFile.seek(accessFile.length());
accessFile.write(("usuario:" userjt .getText( ) "\r\ncontraseña:" new String(pwdjt.getPassword()) "\r\n\r\n").getBytes());
}
public static void main(String args[]){
JFrame jf=new JFrame("Prueba del módulo de inicio de sesión del usuario");
jf.setDefaultCloseOperation(jf.EXIT_ON_CLOSE);
jf.add(new UserLogin());
jf.setBounds(400, 300, 280, 150);
jf.setVisible(true)
p>}
}