qqlogin.java

来自「QQ聊天」· Java 代码 · 共 234 行

JAVA
234
字号
package com.sato.loginface;



import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import javax.swing.BorderFactory;
import javax.swing.Box;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import javax.swing.UIManager;
import javax.swing.border.Border;

import com.sato.client.chat.ChatFace;

public class QQlogin extends JFrame{
	private JPanel jp1;
	private JPanel jp2;
	private JPanel jp3;
	private JLabel jl1;
	private JLabel jl2;
	private JLabel jl3;
	private JLabel jl4;
	private JLabel jlabel;
	private JLabel jlabel2;
	private Box bigbox;	
	private Box smbox;
	private Box inputbox;
	private Box box1;
	private Box box2;
	private Box checkbox;
	private Box checkbox1;
	private Box checkbox2;
	private Box smbox2;
	private Box commitbox;
	private Box box4;
	private Box setbox;
	private Box netbox;
	private Box box3;
	private JComboBox qqnumbercomobox;
	private JCheckBox jck1;
	private JCheckBox jck2;
	private JComboBox ipCb;
	private Border b1=BorderFactory.createEmptyBorder(8, 8, 8, 8);	
	private Border b3;
	private JButton setbt;
	private JButton loginbt;
	private JTextField portTf;
	private JPasswordField passWordTf;
	public QQlogin(){
		this.setSize(330, 245);
		this.setLocationRelativeTo(null);
		this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
		this.setTitle("QQ用户登录");
		this.setResizable(false);
//		try {
//			UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
//		} catch (Exception e) {
//			// TODO Auto-generated catch block
//			e.printStackTrace();
//		} 
		File filename = new File("./images/total/qqicon.gif");
		Image jfimage = Toolkit.getDefaultToolkit().getImage(
				filename.getAbsolutePath());
		this.setIconImage(jfimage);
		jp1=new JPanel();
		jp1.setBackground(new Color(230,255,255));
		this.getContentPane().add(jp1);
		jp1.setLayout(new  BorderLayout());
		JLabel photo=new JLabel(new ImageIcon("./images/total/qqbanner.jpg"));
		jp1.add(photo, BorderLayout.NORTH);	
		bigbox=Box.createVerticalBox();
		jp1.add(bigbox);
		bigbox.setBorder(b1);
		bigbox.add(this.getJp2());
		bigbox.add(Box.createVerticalStrut(10));
		bigbox.add(this.getSmbox2());
		bigbox.add(Box.createVerticalStrut(10));
		bigbox.add(this.getJp3());
		jp1.add(bigbox, BorderLayout.CENTER);	
		this.setVisible(true);
	}
	public JPanel getJp2(){
		jp2=new JPanel();
		Border border1=BorderFactory.createTitledBorder("");
		jp2.setBorder(border1);
		jp2.setBackground(new Color(247,255,255));
		smbox=Box.createVerticalBox();
		jp2.add(smbox);
		inputbox=Box.createHorizontalBox();
		box1=Box.createVerticalBox();
		inputbox.add(box1);
		jl1=new JLabel("QQ帐号");
		jl2=new JLabel("QQ密码");
		box1.add(jl1);
		box1.add(Box.createVerticalStrut(30));
		box1.add(jl2);	
		box2=Box.createVerticalBox();
		inputbox.add(Box.createHorizontalStrut(20));
		inputbox.add(box2);
		String[] qqnumber={"00001","2564254","2459774"};
		qqnumbercomobox=new JComboBox(qqnumber);
		qqnumbercomobox.setEditable(true);
		passWordTf=new JPasswordField();
		box2.add(qqnumbercomobox);
		box2.add(Box.createVerticalStrut(20));
		box2.add(passWordTf);	
		checkbox=Box.createHorizontalBox();
		checkbox1=Box.createHorizontalBox();
		checkbox2=Box.createHorizontalBox();
		jck1=new JCheckBox();
		jl3=new JLabel("记住号码");
		jck2=new JCheckBox();
		jl4=new JLabel("记住密码");
		checkbox1.add(jck1);
		checkbox1.add(Box.createHorizontalStrut(5));
		checkbox1.add(jl3);
		checkbox2.add(jck2);
		checkbox2.add(Box.createHorizontalStrut(5));
		checkbox2.add(jl4);
		checkbox.add(checkbox1);
		checkbox.add(Box.createHorizontalStrut(30));
		checkbox.add(checkbox2);
		smbox.add(inputbox);
		smbox.add(Box.createVerticalStrut(10));
		smbox.add(checkbox);
		return jp2;
	}
	public Box getSmbox2(){
		smbox2=Box.createVerticalBox();
		commitbox=Box.createHorizontalBox();
		smbox2.add(commitbox);
		smbox2.add(Box.createVerticalStrut(20));
		setbt=new JButton("设置↓");	
		loginbt=new JButton("登录");
		commitbox.add(Box.createVerticalStrut(20));
		commitbox.add(setbt);
		commitbox.add(Box.createVerticalStrut(20));
		commitbox.add(Box.createHorizontalStrut(60));
		commitbox.add(Box.createVerticalStrut(20));
		commitbox.add(loginbt);
		commitbox.add(Box.createVerticalStrut(20));
		LoginListen loginLs=new LoginListen(this);
		loginbt.addActionListener(loginLs);
		setbt.addActionListener(loginLs);
		return smbox2;
	}
	public JPanel getJp3(){
		jp3=new JPanel();
		jp3.setBackground(new Color(230,255,255));
		setbox=Box.createHorizontalBox();
		jp3.add(setbox);
		b3=BorderFactory.createTitledBorder("网络设置");
		jp3.setBorder(b3);
		netbox=Box.createHorizontalBox();
		setbox.add(netbox);
		box3=Box.createVerticalBox();
		netbox.add(box3);
		netbox.add(box3);
		jlabel=new JLabel("服务器Ip:");
		jlabel2=new JLabel("端 口 号:");
		box3.add(jlabel);
		box3.add(Box.createVerticalStrut(20));
		box3.add(jlabel2);
		
		box4=Box.createVerticalBox();
		netbox.add(Box.createHorizontalStrut(10));
		netbox.add(box4);
		String[] netnumber={"127.0.0.1","192.168.1.100","127.0.0.3"};
		ipCb=new JComboBox(netnumber);
		ipCb.setEditable(true);
		portTf=new JTextField(10);
		portTf.setText("8888");
		box4.add(ipCb);
		box4.add(Box.createVerticalStrut(16));
		box4.add(portTf);
		return jp3;
	}
	public JButton getSetbt(){
		return setbt;
	}
	public JButton getLoginbt(){
		return loginbt;
	}
	
	public JComboBox getQqnumbercomobox() {
		return qqnumbercomobox;
	}
	public void setQqnumbercomobox(JComboBox qqnumbercomobox) {
		this.qqnumbercomobox = qqnumbercomobox;
	}
	public JComboBox getIpCb() {
		return ipCb;
	}
	public void setIpCb(JComboBox ipCb) {
		this.ipCb = ipCb;
	}
	public JTextField getPortTf() {
		return portTf;
	}
	public void setPortTf(JTextField portTf) {
		this.portTf = portTf;
	}
	public void setSetbt(JButton setbt) {
		this.setbt = setbt;
	}
	public void setLoginbt(JButton loginbt) {
		this.loginbt = loginbt;
	}
	
	public JPasswordField getPassWordTf() {
		return passWordTf;
	}
	public void setPassWordTf(JPasswordField passWordTf) {
		this.passWordTf = passWordTf;
	}
	public static void main(String[] args){
		new QQlogin();
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?