📄 login.java
字号:
//import classes
import java.io.*;
import java.net.*;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import java.util.*;
import javax.swing.Timer;
public class Login extends JFrame implements ActionListener
{
//declare components
JLabel lblUserName;
JLabel lblUserPwd;
JTextField txtUsrName;
JPasswordField txtUsrPwd;
JButton btnLogin;
JButton btnCancel;
JButton btnRegister;
String UsrName;
char[] UsrPwd;
String strPwd;
Socket toServer;
ObjectInputStream streamFromServer;
PrintStream streamToServer;
public Login()
{
this.setTitle("Login"); //set the title
JPanel panel=new JPanel();
panel.setLayout(new GridBagLayout());
GridBagConstraints gbCons=new GridBagConstraints();
//place the components on the frame
gbCons.gridx=0;
gbCons.gridy=0;
lblUserName=new JLabel("Enter Username ");
panel.add(lblUserName, gbCons);
gbCons.gridx=1;
gbCons.gridy=0;
txtUsrName=new JTextField(20);
panel.add(txtUsrName, gbCons);
gbCons.gridx=0;
gbCons.gridy=1;
lblUserPwd=new JLabel("Enter Password ");
panel.add(lblUserPwd, gbCons);
gbCons.gridx=1;
gbCons.gridy=1;
txtUsrPwd=new JPasswordField(20);
panel.add(txtUsrPwd, gbCons);
JPanel btnPanel=new JPanel();
btnLogin=new JButton("Login");
btnPanel.add(btnLogin);
btnLogin.addActionListener(this); //add listener to the Login button
btnRegister=new JButton("Register");
btnPanel.add(btnRegister);
btnRegister.addActionListener(this); //add listener to the Register button
btnCancel=new JButton("Cancel");
btnPanel.add(btnCancel);
btnCancel.addActionListener(this); //add listener to the Cancel button
gbCons.gridx=1;
gbCons.gridy=3;
gbCons.anchor=GridBagConstraints.EAST;
panel.add(btnPanel, gbCons);
getContentPane().add(panel);
setVisible(true);
setSize(450,200);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
//show the error message
void showdlg()
{
JOptionPane.showMessageDialog(this,"Invalid Password or Login name", "Message", JOptionPane.ERROR_MESSAGE);
}
public void actionPerformed(ActionEvent e1)
{
JButton button=(JButton)e1.getSource();
if(button.equals(btnCancel))
{
this.dispose(); //close the current frame
}
else if(button.equals(btnRegister))
{
new Register(); //call Register program
this.dispose();
}
else
{
try
{
//create socket and input-output socket streams
toServer=new Socket("machine-name",1001);
streamFromServer=new ObjectInputStream(toServer.getInputStream());
streamToServer=new PrintStream(toServer.getOutputStream());
//send message to server for login
streamToServer.println("LoginInfo");
UsrName=txtUsrName.getText();
UsrPwd=txtUsrPwd.getPassword();
strPwd=new String(UsrPwd);
//send the user name and password to the server
streamToServer.println(UsrName+":"+strPwd);
//read the message from the server
String frmServer=(String)streamFromServer.readObject();
if(frmServer.equals("Welcome"))
{
new clientInt(UsrName); //start the chat screen
this.dispose();
}
else
{
showdlg();//show error message
}
}//end of try
catch(Exception e)
{
System.out.println("Exception Occured: "+e);
}
}//end of if..else
}//end of actionPerformed
public static void main(String args[])
{
new Login();
}
}//end of class Login
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -