歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Java實現QQ登陸界面

Java實現QQ登陸界面,以下是效果截圖:

素材:

以下是源代碼:

import java.awt.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.*;
 
public classQqClientLogin2 extends JFrame implements MouseListener{
  //北部區域標簽,放圖片QQ2012
  JLabeljlb;
  //中部區域
  JPaneljp;
  JComboBoxcb;//組合框設置狀態用的
  JLabeljp_jlb1,jp_jlb3,jp_jlb4;  //標簽"注冊賬號""找回密碼" JTextField jp_jtf; // QQ號碼/手機/郵箱
  JTextFieldjp_jtf;// QQ號碼/手機/郵箱
  TextFieldjp_pw;  //密碼
  JCheckBoxjp_jcb1,jp_jcb2;//復選框設置"記住密碼""自動登錄"
  Fontf1=new Font("宋體", Font.PLAIN, 14);  //設置字體
  JButtonjp_jb1,jp_jb2,jp_jb3;//按鈕設置登陸等
 
  public static void main(String[] args) {
      QqClientLogin2acl=newQqClientLogin2();
  }
 
  public QqClientLogin2()  {   
      jlb=new JLabel(new ImageIcon("image/tou.gif"));  //圖片路徑可要根據你放置的位置修改  不然顯示不出來若是和文件放同一個地方則image/ 可以去掉       
      jp=new JPanel();
      jp.setLayout(null);
      jp_jlb1=new JLabel(new ImageIcon("image/qqtou.gif"));
      jp_jlb1.setBounds(18, 10, 85,85); //設置標簽位置前提是要空布局         
      jp_jtf=new JTextField("QQ號碼/手機/郵箱");
      jp_jtf.setForeground(Color.LIGHT_GRAY);//設置顏色
      jp_jtf.addMouseListener(this);
      jp_jtf.setBounds(118, 11, 170,25);
   
      jp_pw=new TextField("密碼",24);
      jp_pw.setForeground(Color.LIGHT_GRAY);
      jp_pw.addMouseListener(this);
      jp_pw.setBounds(118, 45, 170,24);
   
      jp_jlb3=new JLabel("注冊賬號");
      jp_jlb3.setFont(f1);
      jp_jlb3.setForeground(Color.BLUE);
      jp_jlb3.setBounds(300, 10, 70,25);
      jp_jlb4=new JLabel("找回密碼");
      jp_jlb4.setFont(f1);//設置"找回密碼"字體
      jp_jlb4.setForeground(Color.BLUE); //設置"找回密碼"字體顏色
      jp_jlb4.setBounds(300, 43, 70,25);   
      String[]s={"在線","隱身","忙碌","離線"}; //設置狀態
      cb=new JComboBox(s);
      cb.setFont(f1);
      cb.setBounds(300, 78, 60,21);
   
      jp_jcb1=new JCheckBox("記住密碼");
      jp_jcb1.setFont(f1);
      jp_jcb1.setBounds(114, 78, 90,20);
      jp_jcb2=new JCheckBox("自動登錄");
      jp_jcb2.setFont(f1);
      jp_jcb2.setBounds(206, 78, 90,20);
   
      jp_jb1=new JButton("多賬號");       
      jp_jb1.setFont(f1);   
 
      jp_jb1.setBounds(10, 120, 76,21);
      jp_jb2=new JButton("設置");
      jp_jb2.setFont(f1);
      jp_jb2.setBounds(95, 120, 65,21);
 
      jp_jb3=new JButton("登錄");
      jp_jb3.setFont(f1);
      jp_jb3.setBounds(297, 120, 65,21);
 
//添加各個組件
      jp.add(jp_jlb1);
      jp.add(jp_jtf);
      jp.add(jp_jlb4);   
      jp.add(jp_pw);
      jp.add(jp_jlb3);
   
      jp.add(cb);
      jp.add(jp_jcb1);
      jp.add(jp_jcb2); 
   
      jp.add(jp_jb1);
      jp.add(jp_jb2);
      jp.add(jp_jb3);
   
      this.add(jlb,"North");//標簽放到最北部
      this.add(jp,BorderLayout.CENTER);//    放到中部   
      this.setIconImage(new ImageIcon("image/qq.gif").getImage());//設置窗口上的qq小圖片
      this.setResizable(false);//不允許放大,改變窗口大小等
      this.setSize(380,275);
      this.setLocation(500,200);
      this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      this.setVisible(true);   
  }
 
  @Override
  public void mouseClicked(MouseEvente) {
      // TODO Auto-generated method stub
      if(e.getSource()==jp_jtf)
      {
        jp_jtf.setText("");
        jp_jtf.setForeground(Color.BLACK);
      }
      else if(e.getSource()==jp_pw)
      {
        jp_pw.setText("");
        jp_pw.setForeground(Color.BLACK);
        jp_pw.setEchoChar('●');
      }
   
  }
 
  @Override
  public void mousePressed(MouseEvente) {
      // TODO Auto-generated method stub
   
  }
 
  @Override
  public voidmouseReleased(MouseEvent e) {
      // TODO Auto-generated method stub
   
  }
  @Override
  public void mouseEntered(MouseEvente) {
      // TODO Auto-generated method stub
   
  }
  @Override
  public void mouseExited(MouseEvente) {
      // TODO Auto-generated method stub
   
  }
}

Copyright © Linux教程網 All Rights Reserved