用java做QQ登錄界面的寫法如下:
丹鳳網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項目制作,到程序開發(fā),運營維護。成都創(chuàng)新互聯(lián)于2013年開始到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)。
package ch10;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
1、//定義該類繼承自JFrame,實現(xiàn)ActionListener接口
public class LoginTest extends JFrame implements ActionListener
{
2、//創(chuàng)建JPanel對象
private JPanel jp=new JPanel();
3、//創(chuàng)建3個標(biāo)并加入數(shù)組
JLabel name = new JLabel("請輸入用戶名");
JLabel password = new JLabel("請輸入密碼");
JLabel show = new JLabel("");
private JLabel[] jl={name,password,show};
4、//創(chuàng)建登陸和重置按扭并加入數(shù)組
JButton login = new JButton("登陸");
JButton reset = new JButton("重置");
private JButton[] jb={login,reset};
5、//創(chuàng)建文本框以及密碼框
private JTextField jName=new JTextField();
private JPasswordField jPassword =new JPasswordField();
public LoginTest()
{
6、//設(shè)置布局管理器為空布局,這里自己擺放按鈕、標(biāo)簽和文本框
jp.setLayout(null);
for(int i=0;i2;i++)
{
7、//設(shè)置標(biāo)簽和按扭的位置與大小
jl[i].setBounds(30,20+40*i,180,20);
jb[i].setBounds(30+110*i,100,80,20);
8、//添加標(biāo)簽和按扭到JPanel容器中
jp.add(jl[i]);
jp.add(jb[i]);
//為2個按鈕注冊動作事件監(jiān)聽器
jb[i].addActionListener(this);
}
9、//設(shè)置文本框的位置和大小,注意滿足美觀并足夠用戶名的長度
jName.setBounds(130,15,100,20);
10、//添加文本框到JPanel容器中
jp.add(jName);
11、//為文本框注冊動作事件監(jiān)聽器
jName.addActionListener(this);
12、//設(shè)置密碼框的位置和大小,注意滿足美觀和足夠密碼的長度
jPassword.setBounds(130,60,100,20);
13、//添加密碼框到JPanel容器中
jp.add(jPassword);
14、//設(shè)置密碼框中的回顯字符,這里設(shè)置美元符號
jPassword.setEchoChar('$');
15、//為密碼框注冊動作事件監(jiān)聽器
jPassword.addActionListener(this);
16、//設(shè)置用于顯示登陸狀態(tài)的標(biāo)簽大小位置,并將其添加進JPanel容器
jl[2].setBounds(10,180,270,20);
jp.add(jl[2]);
17、//添加JPanel容器到窗體中
this.add(jp);
18、//設(shè)置窗體的標(biāo)題、位置、大小、可見性及關(guān)閉動作
this.setTitle("登陸窗口");
this.setBounds(200,200,270,250);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
19、//實現(xiàn)動作監(jiān)聽器接口中的方法actionPerformed
public void actionPerformed(ActionEvent e)
{
20、//如果事件源為文本框
if(e.getSource()==jName)
{
21、//切換輸入焦點到密碼框
jPassword.requestFocus();
}
22、//如果事件源為重置按扭
else if(e.getSource()==jb[1])
{
23、//清空姓名文本框、密碼框和show標(biāo)簽中的所有信息
jl[2].setText("");
jName.setText("");
jPassword.setText("");
24、//讓輸入焦點回到文本框
jName.requestFocus();
}
25、//如果事件源為登陸按鈕,則判斷登錄名和密碼是否正確
else
{
26、//判斷用戶名和密碼是否匹配
if(jName.getText().equals("lixiangguo")
String.valueOf(jPassword.getPassword()).equals("19801001"))
{
27、jl[2].setText("登陸成功,歡迎您的到來!");
}
else
{
28、jl[2].setText("對不起,您的用戶名或密碼錯誤!");
}
}
}
public static void main(String[] args)
{
29、//創(chuàng)建LoginTest窗體對象
new LoginTest();
}
}
java實現(xiàn)簡單QQ登陸界面:
1.生成界面的java代碼
package?QQ2014;
import?javax.swing.*;
import?java.awt.*;
import?java.awt.event.*;
public?class?QQ2014?{
//創(chuàng)建登陸界面類
public?void?showLoginFrame(){
//創(chuàng)建船體對象
JFrame?loginFrame=new?JFrame();
//設(shè)置大小,位置,標(biāo)題
loginFrame.setSize(300,200);
loginFrame.setTitle("QQ2014");
loginFrame.setLocationRelativeTo(null);
//創(chuàng)建流式分布對象
FlowLayout?layout=new?FlowLayout();
loginFrame.setLayout(layout);
//創(chuàng)建賬戶名,密碼和輸入框
JLabel?user_name=new?JLabel("賬號:");
JLabel?user_password=new?JLabel("密碼:");
JTextField?field_name=new?JTextField(20);
JPasswordField?field_password=new?JPasswordField(20);
//創(chuàng)建登陸,重置按鈕
JButton?button_reset=new?JButton("重置");
JButton?button_login=new?JButton("登陸");
//設(shè)置窗體可見
loginFrame.setVisible(true);
//創(chuàng)建事件監(jiān)聽對象
ActionListener?action_listener1=new?ActionListener(){
public?void?actionPerformed(ActionEvent?e){
String?name=field_name.getText();
String?password=field_password.getText();
if("zhaoxin".equals(name)"123".equals(password))
{
showIndexFrame();
loginFrame.setDefaultCloseOperation(3);
loginFrame.setVisible(false);
}
else{
System.out.println("密碼錯誤,重新輸入!");
}
}
};
ActionListener?action_listener2=new?ActionListener(){
public?void?actionPerformed(ActionEvent?e){
field_name.setText("");
field_password.setText("");
}
};
//將文本輸入框,按鈕,事件監(jiān)聽對象添加
loginFrame.add(user_name);
loginFrame.add(field_name);
loginFrame.add(user_password);
loginFrame.add(field_password);
loginFrame.add(button_reset);
loginFrame.add(button_login);
button_reset.addActionListener(action_listener2);
button_login.addActionListener(action_listener1);
}
public?void?showIndexFrame(){
//創(chuàng)建窗體對象
JFrame?indexFrame=new?JFrame();
indexFrame.setSize(200,500);
indexFrame.setTitle("QQ好友列表");
indexFrame.setLocationRelativeTo(null);
//設(shè)置流式分布對象
FlowLayout?layout=new?FlowLayout(FlowLayout.CENTER,100,10);
indexFrame.setLayout(layout);
//創(chuàng)建好友按鈕
for(int?i=0;i10;i++)
{
JButton?button_friend=new?JButton("friend"+i);
//創(chuàng)建動作事件監(jiān)聽對象
ActionListener?action_listener=new?ActionListener()
{
public?void?actionPerformed(ActionEvent?e)
{
showChatFrame();
indexFrame.setVisible(false);
indexFrame.setDefaultCloseOperation(3);
}
};
button_friend.addActionListener(action_listener);
indexFrame.add(button_friend);
}
//設(shè)置窗體可見
indexFrame.setVisible(true);
}
public?void?showChatFrame(){
//創(chuàng)建窗體,大小,位置,標(biāo)題
JFrame?chatFrame=new?JFrame();
chatFrame.setSize(400,400);
chatFrame.setTitle("正在聊天中...");
chatFrame.setLocationRelativeTo(null);
//創(chuàng)建聊天記錄,輸入域
JTextArea?area_input=new?JTextArea(10,30);
JTextArea?area_record=new?JTextArea(5,30);
//創(chuàng)建流式分布對象
FlowLayout?layout=new?FlowLayout(FlowLayout.CENTER,0,10);
chatFrame.setLayout(layout);
//創(chuàng)建發(fā)送,關(guān)閉按扭
JButton?button_send=new?JButton("發(fā)送");
JButton?button_close=new?JButton("關(guān)閉");
//創(chuàng)建動作事件監(jiān)聽對象
ActionListener?action_listener1=new?ActionListener()
{
public?void?actionPerformed(ActionEvent?e){
area_record.setText(area_record.getText()+"\n"+area_input.getText());
area_input.setText("");
}
};
ActionListener?action_listener2=new?ActionListener()
{
public?void?actionPerformed(ActionEvent?e){
chatFrame.setVisible(false);
chatFrame.setDefaultCloseOperation(3);
}
};
//設(shè)置窗體可見
chatFrame.setVisible(true);
//添加按鈕,事件監(jiān)聽對象
chatFrame.add(area_record);
chatFrame.add(area_input);
chatFrame.add(button_send);
chatFrame.add(button_close);
button_send.addActionListener(action_listener1);
button_close.addActionListener(action_listener2);
}
}
復(fù)制代碼
2.java?main方法調(diào)用
package?QQ2014;
public?class?Test?{
public?static?void?main(String[]?args){
QQ2014?qq=new?QQ2014();
qq.showLoginFrame();
}
}
太簡單了!你看看! package dyno.swing.beans.qq; import javax.swing.*; import javax.swing.event.MouseInputListener; import org.jvnet.substance.skin.SubstanceOfficeBlue2007LookAndFeel; /*import org.jvnet.substance.skin.SubstanceModerateLookAndFeel; import org.jvnet.substance.skin.SubstanceOfficeBlue2007LookAndFeel;*/ import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseEvent; import java.io.IOException; import java.io.PrintWriter; import java.net.Socket; import java.net.UnknownHostException; import java.sql.ResultSet; import java.sql.SQLException; import java.util.Scanner; public class QQLogin extends JFrame implements MouseInputListener,ActionListener{ JLabel guanggao,beijing,wenzi,shezhi,zhanghaowb,qq1,dengluzhuangtai; // JTextField zhanghao; JPopupMenu haoma; JComboBox zhanghao; JPasswordField mima; JCheckBox jizhumima,zidongdenglu; JButton denglu,chashamuma; JProgressBar jpb; SimThread activity; Timer activityMonitor; String name,qq; Socket s; public QQLogin() { try { UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel"); } catch (ClassNotFoundException e1) { // TODO 自動生成 catch 塊 e1.printStackTrace(); } catch (InstantiationException e1) { // TODO 自動生成 catch 塊 e1.printStackTrace(); } catch (IllegalAccessException e1) { // TODO 自動生成 catch 塊 e1.printStackTrace(); } catch (UnsupportedLookAndFeelException e1) { // TODO 自動生成 catch 塊 e1.printStackTrace(); } chashamuma = new JButton("查殺木馬"); chashamuma.setBounds(240, 155,85, 20); this.add(chashamuma); jpb = new JProgressBar(); jpb.setStringPainted(true); jpb.setBounds(100, 240, 200, 15); this.add(jpb); chashamuma.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ jpb.setMaximum(1000);//設(shè)置進度欄的最大值 activity=new SimThread(1000); activity.start();//啟動線程 activityMonitor.start();//啟動定時器 chashamuma.setEnabled(false);//禁止按鈕 } }); activityMonitor=new Timer(100,new ActionListener(){//每0.5秒執(zhí)行一次 public void actionPerformed(ActionEvent e){//以下動作將在事件調(diào)度線程中運行,十分安全 int current=activity.getCurrent();//得到線程的當(dāng)前進度 jpb.setValue(current);//更新進度欄的值 if(current==activity.getTarget()){//如果到達目標(biāo)值 activityMonitor.stop();//終止定時器 chashamuma.setEnabled(true);//激活按鈕 } } }); dengluzhuangtai = new JLabel(new ImageIcon("zaixianzhuangtai.jpg")); dengluzhuangtai.setBounds(75, 145, 35, 30); this.add(dengluzhuangtai); dengluzhuangtai.addMouseListener(this); denglu = new JButton("登錄"); denglu.setBounds(140, 155, 80, 20); this.add(denglu); this.setAlwaysOnTop(true); zidongdenglu = new JCheckBox("自動登錄"); zidongdenglu.setBounds(200, 190, 100, 30); this.add(zidongdenglu); jizhumima = new JCheckBox("記住密碼"); jizhumima.setBounds(100, 190, 100, 30); // jizhumima.setBackground(new Color(228, 244, 255)); this.add(jizhumima); haoma = new JPopupMenu(); /* zhanghao = new JTextField(20); zhanghao.setBounds(120, 78, 135, 20); zhanghao.setBorder(BorderFactory.createMatteBorder(1, 1, 1, 1, Color.WHITE)); zhanghao.setFont(new Font("宋體",Font.PLAIN,13)); this.add(zhanghao);*/ // zhanghaowb = new JLabel(new ImageIcon("2.png")); // zhanghaowb.setBounds(90, 73, 194, 31); // jiantou = new JLabel(new ImageIcon("baijiantou.png")); // jiantou.setBounds(256, 78, 23, 21); // jiantou.addMouseListener(this); // this.add(jiantou); // this.add(zhanghaowb); chashamuma.addActionListener(this); mima = new JPasswordField(); mima.setEchoChar('*'); mima.setFont(new Font("宋體",Font.PLAIN,13)); mima.setBounds(100, 113, 150, 20); this.add(mima); zhanghao = new JComboBox(); zhanghao.setEditable(true); zhanghao.setBounds(100, 78, 150, 20); zhanghao.setFont(new Font("宋體",Font.PLAIN,13)); this.add(zhanghao); guanggao = new JLabel(new ImageIcon("guanggao.gif")); guanggao.setBounds(0, 0, 334, 64); beijing = new JLabel(new ImageIcon("beijing.jpg")); beijing.setBounds(0, 64, 334, 154); wenzi = new JLabel(new ImageIcon("wenzi.jpg")); wenzi.setBounds(30, 75, 50, 100); denglu.addActionListener(this); // zhanghaowb.addMouseListener(this); // zhanghao.addMouseListener(this); this.add(wenzi); this.add(beijing); this.setLayout(null); this.add(guanggao); this.setVisible(true); this.setDefaultCloseOperation(3); this.setSize(340, 250); this.setLocationRelativeTo(null); } public static void main(String[] args) { /*JFrame.setDefaultLookAndFeelDecorated(true); try { UIManager.setLookAndFeel(new SubstanceOfficeBlue2007LookAndFeel()) ; UIManager.setLookAndFeel("org.jvnet.substance.skin.SubstanceOfficeBlue2007LookAndFeel"); } catch (Exception e) { System.out.println("Substance Raven Graphite failed to initialize"); } SwingUtilities.invokeLater(new Runnable() { public void run() { QQLogin w = new QQLogin(); w.setVisible(true); } });*/ new QQLogin(); } public void mouseClicked(MouseEvent e) { // TODO 自動生成方法存根 } public void mouseEntered(MouseEvent e) { if(e.getSource() == dengluzhuangtai) { dengluzhuangtai.setIcon(new ImageIcon("zaixianzhuangtaidian.jpg")); } } public void mouseExited(MouseEvent e) { if(e.getSource() == dengluzhuangtai) { dengluzhuangtai.setIcon(new ImageIcon("zaixianzhuangtai.jpg")); } } public void mousePressed(MouseEvent e) { // TODO 自動生成方法存根 } public void mouseReleased(MouseEvent e) { // TODO 自動生成方法存根 } public void mouseDragged(MouseEvent e) { // TODO 自動生成方法存根 } public void mouseMoved(MouseEvent e) { // TODO 自動生成方法存根 } public class liaotianchuangkou { } class SimThread extends Thread{//線程類 private int current;//進度欄的當(dāng)前值 private int target;//進度欄的最大值 public SimThread(int t){ current=0; target=t; } public int getTarget(){ return target; } public int getCurrent(){ return current; } public void run(){//線程體 try{ while (currenttarget !interrupted()){//如果進度欄的當(dāng)前值小于目標(biāo)值并且線程沒有被中斷 sleep(10); current++; if(current == 700) { sleep(3000); } else if(current == 730) { sleep(1000); } } }catch (InterruptedException e){} } } public void actionPerformed(ActionEvent e) { if(e.getSource() == chashamuma) { this.setBounds(300, 300, 340, 300); } else if(e.getSource() == denglu) { String zh = (String) zhanghao.getSelectedItem(); System.out.println(zhanghao.getSelectedItem()); // System.out.println(zhanghao.getItemAt(0)); char [] str = mima.getPassword(); String mima = String.valueOf(str);; System.out.println(mima); // Sql login = new Sql(); // if(login.login(zh,mima)) // { try { s = new Socket("127.0.0.1",8888); System.out.println(s); PrintWriter pw; Scanner sc; pw = new PrintWriter(s.getOutputStream(),true); sc = new Scanner(s.getInputStream()); String str2 = "login#289872400198724#"+zh+"#289872400198724#"+mima; System.out.println(str2); pw.println(str2); String str3 = sc.nextLine(); String yanzheng[] = str3.split("#"); System.out.println(str3); if(yanzheng[0].equals("true")) { System.out.println("登陸成功!"); name = yanzheng[1]; qq = yanzheng[2]; // this.setVisible(false); // Thread.sleep(5000); System.out.println("woao"+name); System.out.println("woai"+qq); Logined logined = new Logined(name,qq); this.setVisible(false); } else { JOptionPane.showMessageDialog(this, "用戶名或密碼錯誤!", "用戶名或密碼錯誤!", 0); } } catch (UnknownHostException e2) { // TODO 自動生成 catch 塊 e2.printStackTrace(); } catch (IOException e2) { // TODO 自動生成 catch 塊 e2.printStackTrace(); } /*try { login.rs = login.stat.executeQuery("select * from qquser where username='"+zh+"' and password = '"+mima+"'"); boolean flag = login.rs.next(); if(flag == true) { name = login.rs.getString("name"); qq = login.rs.getString("username"); } else { }*/ // } catch (SQLException e1) { // TODO 自動生成 catch 塊 // e1.printStackTrace(); // } } else { JOptionPane.showMessageDialog(this, "用戶名或密碼錯誤", "輸入錯誤", 0); } // this.setVisible(false); //new Logined(); } }
當(dāng)前名稱:qq頁面登錄java代碼 java寫登錄界面
分享URL:http://muchs.cn/article12/dospcdc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、企業(yè)建站、網(wǎng)站內(nèi)鏈、網(wǎng)站建設(shè)、用戶體驗、App開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)