📄 qqlogin.java
字号:
//登录界面
package myQQ;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;
class QQLogIn extends JFrame
{
Image imTitle = Toolkit.getDefaultToolkit().getImage("QQ/skin/log/icon.png");
QQ_AddUser rs = null; //注册界面
QQClient client = null; //客户端连接
String id; //编号
Calendar sTime; //时间
QQLogIn()
{
super("QQ 2006 登录");
this.setSize(332,236);
this.setResizable(false);
this.setIconImage(imTitle);
Point p = new Adom().setCenter(this.getSize());
this.setLocation(p);
Container c = this.getContentPane();
c.add(new MyPane(0,"log/bg"));
this.setVisible(true);
}
public void tem()
{ //将本界面传入客户端
client.setLogFrame(this);
}
class MyPane extends QQPanel implements ActionListener
{
ImageIcon im = new ImageIcon("QQ/skin/log/t.png");
JLabel jlTitle = new JLabel(im);
QQButton []jb = new QQButton[5];
String[] sjb = {"没有注册?","忘记密码?","申请号码","登录","取消"};
JCheckBox jcb1 = new JCheckBox("自动登陆");
JCheckBox jcb2 = new JCheckBox("隐身登陆");
JLabel jlID = new JLabel("登陆I D:");
JLabel jlMiMa = new JLabel("用户密码:");
JTextField jtf = new JTextField(15);
JPasswordField jpf = new JPasswordField(15);
JPanel jpZ = new JPanel();
JPanel jpA = new JPanel();
public MyPane(int t,String imname)
{
super(t,imname);
this.setLayout(null);
for (int i = 0; i<jb.length; i++)
{ //初始按钮
jb[i]= new QQButton("QQ/skin/default/s0",sjb[i]);
jb[i].addActionListener(this);
}
jpZ.setLayout(null); jpA.setLayout(null);
jpZ.setOpaque(false); jpA.setOpaque(false);
jcb1.setOpaque(false); jcb2.setOpaque(false);
jpZ.setBorder(BorderFactory.createEtchedBorder());
jlID.setBounds(12,14,80,24); jlMiMa.setBounds(12,46,80,24);
jtf.setBounds(72,14,145,24); jpf.setBounds(72,46,145,24);
jb[0].setBounds(236,14,71,22); jb[1].setBounds(236,46,71,22);
jcb1.setBounds(80,82,86,24); jcb2.setBounds(176,82,86,24);
jpZ.add(jb[0],null); jpZ.add(jb[1],null);
jpZ.add(jlID,null); jpZ.add(jlMiMa,null); jpZ.add(jtf,null); jpZ.add(jpf,null);
jpZ.add(jcb1,null); jpZ.add(jcb2,null);
//-------------------------------------------------------------
jb[2].setBounds(12,8,71,22); jb[3].setBounds(160,8,71,22);
jb[4].setBounds(236,8,71,22);
jpA.add(jb[2],null);jpA.add(jb[3],null);jpA.add(jb[4],null);
//-------------------------------------------------------------
jlTitle.setBounds(0,0,325,55);
jpZ.setBounds(0,57,324,115); jpA.setBounds(0,170,324,35);
this.add(jpZ,null); this.add(jpA,null); this.add(jlTitle,null);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource().equals(jb[0])||e.getSource().equals(jb[2]))
{ //弹出注册页面
rs = new QQ_AddUser(client);
}
if(e.getSource().equals(jb[1]))
{
}
if(e.getSource().equals(jb[3]))
{
//登录
this.Log();
}
if(e.getSource().equals(jb[4]))
{ //退出系统
if(id.length()>0)
client.sendMess(new MessType(id,-1));
client.stopClient();
System.exit(0);
}
}
public void Log()
{ //登录
id = jtf.getText().trim();
try {
Integer.parseInt(id);
String pw = jpf.getText().trim();
if(pw.length()==0)
{
JOptionPane.showMessageDialog(this,"密码不能为空!");
jpf.setText("");
jpf.requestFocus(true);
return ;
}
//创建连接线程
client = new QQClient();
tem(); //将登录界面传入客户端以操作
//启动线程
client.start();
MessType mt = new MessType(id,pw,0);
client.sendMess(mt);
}
catch (Exception ex) {
JOptionPane.showMessageDialog(this,"id输入有误!");
jtf.setText("");
jtf.requestFocus(true);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -