Java Swing仿QQ登錄界面效果
本文實(shí)例為大家分享了Java Swing仿QQ登錄界面展示的具體代碼,供大家參考,具體內(nèi)容如下
閑來無事將早些時候已實(shí)現(xiàn)的QQ登錄界面再實(shí)現(xiàn)了一遍,純手工打造(意思是沒有用NetBeans、MyEclipse的拖動功能)。
源代碼如下:
package ibees.qq; import java.awt.BorderLayout; import java.net.URL; 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; /** * 仿QQ登錄界面,僅供學(xué)習(xí)參考,涉及到的有窗口居中、JPanel、LayoutManager的使用 * @author hhzxj2008 * */ public class QQLoginView extends JFrame { /** * */ private static final long serialVersionUID = -5665975170821790753L; public QQLoginView() { initComponent(); } private void initComponent() { setTitle("用戶登錄"); //設(shè)置LOGO URL image = QQLoginView.class.getClassLoader().getResource("ibees/qq/images/year.jpg");//圖片的位置 JLabel imageLogo = new JLabel(new ImageIcon(image)); add(imageLogo,BorderLayout.NORTH); //QQ號和密碼 JPanel jp = new JPanel(); JPanel jpAccount = new JPanel(); jpAccount.add(new JLabel("帳號")); JTextField userTextField = new JTextField(15); jpAccount.add(userTextField); jpAccount.add(new JLabel("用戶注冊")); jp.add(jpAccount); JPanel jpPass = new JPanel(); jpPass.add(new JLabel("密碼")); JPasswordField passTextField = new JPasswordField(15); jpPass.add(passTextField); jpPass.add(new JLabel("找回密碼")); jp.add(jpPass); //登錄設(shè)置 JPanel jpstatus = new JPanel(); jpstatus.add(new JLabel("狀態(tài)")); JComboBox statusComboBox = new JComboBox(); statusComboBox.addItem("Q我"); statusComboBox.addItem("在線"); statusComboBox.addItem("隱身"); statusComboBox.addItem("離線"); jpstatus.add(statusComboBox); jpstatus.add(new JCheckBox("記住密碼")); jpstatus.add(new JCheckBox("自動登錄")); jp.add(jpstatus); add(jp); //底部登錄按鈕 JPanel bottomPanel = new JPanel(); bottomPanel.setLayout(new BorderLayout()); bottomPanel.add(new JButton("設(shè)置"),BorderLayout.WEST); bottomPanel.add(new JButton("登錄"),BorderLayout.EAST); add(bottomPanel,BorderLayout.SOUTH); setSize(324,230); setDefaultCloseOperation(EXIT_ON_CLOSE); setLocationRelativeTo(null); } /** * @param args */ public static void main(String[] args) { java.awt.EventQueue.invokeLater(new Runnable(){ @Override public void run() { new QQLoginView().setVisible(true); } }); } }
效果:
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SparkSQL中的JSON內(nèi)置函數(shù)全解析
你是否曾經(jīng)為處理JSON數(shù)據(jù)而頭疼?SparkSQL為我們提供了強(qiáng)大的內(nèi)置JSON函數(shù),讓JSON處理變得輕而易舉,本文將帶你深入了解這些函數(shù),感興趣的朋友一起看看吧2024-08-08教你創(chuàng)建springcloud微服務(wù)的基礎(chǔ)子服務(wù)的超詳細(xì)過程
這篇文章主要介紹了創(chuàng)建springcloud微服務(wù)的基礎(chǔ)子服務(wù),主要是創(chuàng)建兩個springboot服務(wù),在教程中增加springcloud相關(guān)組件,本文分步驟給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-04-04Java StackTraceElement實(shí)例代碼
這篇文章主要介紹了Java StackTraceElement實(shí)例代碼,分享了相關(guān)代碼示例,小編覺得還是挺不錯的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-02-02Java中的拷貝數(shù)組CopyOnWriteArrayList詳解
這篇文章主要介紹了Java中的拷貝數(shù)組CopyOnWriteArrayList詳解,ArrayList和LinkedList都不是線程安全的,如果需要線程安全的List,可以使用synchronizedList來生成一個同步list,但是這個同步list的方法都是通過synchronized修飾來保證同步的,需要的朋友可以參考下2023-12-12java學(xué)習(xí)之一維數(shù)組中重復(fù)元素的去除
關(guān)于一維數(shù)組中有重復(fù)的元素該怎么剔除,作為java初學(xué)者的我整理出不調(diào)用任何特殊庫的基礎(chǔ)方法,這種思想在其他語言也適用,有需要的朋友可以借鑒參考下2021-09-09EL表達(dá)式簡介_動力節(jié)點(diǎn)Java學(xué)院整理
EL全名為Expression Language,這篇文章主要給大家介紹EL表達(dá)式的主要作用及內(nèi)容簡介,感興趣的朋友一起看看2017-07-07