📄 login.java
字号:
package com.li.myqq.login;
import javax.swing.*;
import java.awt.event.KeyEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.*;
import com.li.myqq.server.*;
import java.awt.Rectangle;
import java.io.*;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;
import javax.swing.JButton;
public class Login extends JFrame {
private static final long serialVersionUID = 1L;
private JPanel jContentPane = null;
private JLabel jLabel = null;
private JLabel TextUsername = null;
private JLabel TextUserpwd = null;
private JTextField usename = null;
private JPasswordField password = null;
private JButton denglu = null;
public JButton zhuce = null;
private JButton cancel = null;
public JButton lianjie = null;
private JButton shezhi = null;
private String username=null; // @jve:decl-index=0:
Socket socket; // @jve:decl-index=0:
BufferedReader bur=null;
PrintWriter print=null;
String bf[]=null;
private JButton shezhi1 = null;
/*
* This is the default constructor
*/
public Login() {
super();
initialize();
}
/**
* This method initializes this
*
* @return void
*/
private void initialize() {
socket=getSocket();
this.setSize(293, 218);
this.setResizable(false);
this.setIconImage(Toolkit.getDefaultToolkit().getImage("./pic/84.gif"));
this.setContentPane(getJContentPane());
this.setTitle("QQ登录.....");
getUsename().setText("306328413");
getPassword().setText("1987623");
getUsename().setEditable(false);
jContentPane.setBackground(Color.blue);
this.setVisible(true);
getDenglu().setEnabled(false);
zhuce.setEnabled(false);
int x=(int)Toolkit.getDefaultToolkit().getScreenSize().getWidth();
int y=(int)Toolkit.getDefaultToolkit().getScreenSize().getHeight();
int num1=(x-this.getWidth())/2;
int num2=(y-this.getHeight())/2;
this.setLocation(num1, num2);
}
/**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane() {
if (jContentPane == null) {
TextUserpwd = new JLabel();
TextUserpwd.setBounds(new Rectangle(3, 109, 76, 29));
TextUserpwd.setHorizontalAlignment(SwingConstants.CENTER);
TextUserpwd.setText("QQ密码:");
TextUserpwd.setDisplayedMnemonic(KeyEvent.VK_UNDEFINED);
TextUsername = new JLabel();
TextUsername.setBounds(new Rectangle(2, 68, 77, 28));
TextUsername.setDisplayedMnemonic(KeyEvent.VK_UNDEFINED);
TextUsername.setHorizontalAlignment(SwingConstants.CENTER);
TextUsername.setText("QQ号码:");
jLabel = new JLabel();
jLabel.setBounds(new Rectangle(-2, -9, 292, 67));
jLabel.setIcon(new ImageIcon("./pic/qqqq.GIF"));
jLabel.setText("");
jContentPane = new JPanel();
jContentPane.setLayout(null);
jContentPane.add(jLabel, null);
jContentPane.add(TextUsername, null);
jContentPane.add(TextUserpwd, null);
jContentPane.add(getUsename(), null);
jContentPane.add(getPassword(), null);
jContentPane.add(getDenglu(), null);
jContentPane.add(getZhuce(), null);
jContentPane.add(getCancel(), null);
jContentPane.add(getLianjie(), null);
jContentPane.add(getShezhi1(), null);
}
return jContentPane;
}
/**
* This method initializes usename
*
* @return javax.swing.JTextField
*/
public JTextField getUsename() {
if (usename == null) {
usename = new JTextField();
usename.setBounds(new Rectangle(88, 68, 118, 27));
usename.setFont(new Font("Dialog", Font.PLAIN, 18));
}
return usename;
}
/**
* This method initializes password
*
* @return javax.swing.JPasswordField
*/
private JPasswordField getPassword() {
if (password == null) {
password = new JPasswordField();
password.setBounds(new Rectangle(89, 108, 118, 29));
password.setFont(new Font("Dialog", Font.PLAIN, 18));
}
return password;
}
/**
* This method initializes denglu
*
* @return javax.swing.JButton
*/
public static Chuangkou main=null;
public JButton getDenglu() {
if (denglu == null) {
denglu = new JButton();
denglu.setBounds(new Rectangle(216, 108, 60, 28));
denglu.setText("登录");
denglu.addActionListener(new java.awt.event.ActionListener() {
@SuppressWarnings("deprecation")
public void actionPerformed(java.awt.event.ActionEvent e) {
String mima=getPassword().getText();
try {
bur=new BufferedReader(new InputStreamReader(socket.getInputStream()));
print=new PrintWriter(new OutputStreamWriter(socket.getOutputStream()),true);
} catch (UnknownHostException e2) {
// TODO 自动生成 catch 块
e2.printStackTrace();
} catch (IOException ee) {
// TODO 自动生成 catch 块
ee.printStackTrace();
}
if(usename.getText().equals(""))
{
JOptionPane.showMessageDialog(null, "请输入QQ号码");
usename.requestFocus();
}
else if(mima.equals(""))
{
JOptionPane.showMessageDialog(null, "密码不能为空");
getPassword().requestFocus();
}
else
{
try {
print.println("login");
print.println(InetAddress.getLocalHost().getHostAddress());
print.println(usename.getText().trim().toString());
print.println(password.getText().trim().toString());
//um.setNumber(usename.getText().trim());
String pass=bur.readLine().trim().toString();
System.out.println(pass);
if(pass.equals("pass"))
{
main=new Chuangkou(); //打开
int num=Integer.parseInt(bur.readLine());
System.out.println(num);
//加载好友
JButton jb[]=new JButton[num];
int online=0; //在线好友
for(int i=0;i<num;i++)
{
String str1=bur.readLine();
System.out.println("my friend info:"+str1);
jb[i]=new JButton();
String bf1[]=str1.split("/");
System.out.println(bf1[0]);
jb[i].setText(bf1[1]);
ImageIcon ii=null;
if(bf1[2].equals("1"))
{
ii=new ImageIcon("./pic/"+bf1[5]+".gif");
online++;
}
else
{
ii=new ImageIcon("./pic/"+bf1[5]+"-1"+".gif");
}
jb[i].setIcon(ii);
}
String str=bur.readLine();
System.out.println("my info:"+str);
bf=str.split("/");
main.jLabel3.setText(bf[2].toString());
main.jLabel4.setText(bf[0].toString());
main.jLabel5.setText(bf[3].toString());
ImageIcon icon=new ImageIcon("./pic/"+Integer.parseInt(bf[4])+".gif");
main.jLabel2.setIcon(icon);
main.getMyfriend().setText("我 的 好 友 ("+online+"/"+num+")");
main.setTitle(usename.getText().trim().toString()+"在线");
main.setXinxi(bf);
for(int i=0;i<jb.length;i++)
{
jb[i].addMouseListener(new MouseApp());
main.jPanel.add(jb[i]);
}
main.setVisible(true);
Login.this.dispose();
}
else if(pass.equals("sorry"))
{
JOptionPane.showMessageDialog(null, "对不起,该用户已在某处登录了!");
usename.setText("");
password.setText("");
usename.requestFocus();
}
else
{
JOptionPane.showMessageDialog(null, "QQ号码或密码输入有误");
password.setText("");
password.requestFocus();
}
} catch (IOException e1) {
JOptionPane.showMessageDialog(null, "登录失败");
}
}
}
});
}
return denglu;
}
/**
* This method initializes zhuce
*
* @return javax.swing.JButton
*/
public JButton getZhuce() {
if (zhuce == null) {
zhuce = new JButton();
zhuce.setBounds(new Rectangle(117, 149, 73, 29));
zhuce.setText("注册");
zhuce.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
new Zhece();
Login.this.dispose();
}
});
}
return zhuce;
}
public void gengxin()
{
}
/**
* This method initializes cancel
*
* @return javax.swing.JButton
*/
private JButton getCancel() {
if (cancel == null) {
cancel = new JButton();
cancel.setBounds(new Rectangle(208, 150, 73, 28));
cancel.setText("取消");
cancel.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
Login.this.dispose();
}
});
}
return cancel;
}
/**
* This method initializes lianjie
*
* @return javax.swing.JButton
*/
public JButton getLianjie() {
if (lianjie == null) {
lianjie = new JButton();
lianjie.setBounds(new Rectangle(215, 68, 61, 29));
lianjie.setText("连网");
lianjie.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
new LianJie(Login.this);
}
});
}
return lianjie;
}
/**
* This method initializes shezhi1
*
* @return javax.swing.JButton
*/
private JButton getShezhi1() {
if (shezhi1 == null) {
shezhi1 = new JButton();
shezhi1.setBounds(new Rectangle(10, 149, 92, 29));
shezhi1.setText("高级设置");
shezhi1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
JOptionPane.showMessageDialog(null, "尚未制作好!请等待...");
}
});
}
return shezhi1;
}
public static void main(String args[])
{
new Login();
}
public Socket getSocket() {
return socket;
}
public void setSocket(Socket socket) {
this.socket = socket;
}
class MouseApp extends MouseAdapter
{
public void mouseClicked(MouseEvent e)
{
//if(e.getSource()==)
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -