swing登錄注冊界面設(shè)計
本文實例為大家分享了swing登錄注冊界面展示的具體代碼,供大家參考,具體內(nèi)容如下
開發(fā)環(huán)境:Eclipse Neon.3 Release (4.6.3)
我用的為javaee版本的,為了便于設(shè)計界面,需要安裝windowbuilder插件,可以直接在marketplace里搜索到。
說明:參考凱哥視頻同步學習的
界面效果
登錄界面
注冊界面
關(guān)鍵技術(shù)
該項目用到了java swing外觀插件
用到了圖片(點擊src右鍵文件夾取名res并復制圖片login.jpg)
源碼
com.lsh.view.LoginDialog
package com.lsh.view; import java.awt.BorderLayout; import javax.swing.JButton; import javax.swing.JDialog; import javax.swing.JPanel; import javax.swing.border.EmptyBorder; import javax.swing.JTextField; import javax.swing.JLabel; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import javax.swing.ImageIcon; import javax.swing.border.TitledBorder; import com.lsh.util.ImageScale; @SuppressWarnings("serial") public class LoginDialog extends JDialog { private final JPanel contentPanel = new JPanel(); private JTextField textField; private JTextField textField_1; private JTextField textField_2; private JTextField textField_3; private JTextField textField_4; private JTextField textField_5; private static final int DIALOG_WIDTH=414; private static final int DIALOG_HEIGHT=340; private static final int DIALOG_HEIGHT_EXTEND=573; /** * Launch the application. */ public static void main(String[] args) { try { org.jb2011.lnf.beautyeye.BeautyEyeLNFHelper.launchBeautyEyeLNF(); } catch(Exception e) { //TODO exception System.out.println("加載炫彩皮膚失??!"); } try { LoginDialog dialog = new LoginDialog(); dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); dialog.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } /** * Create the dialog. */ public LoginDialog() { setAlwaysOnTop(true); setResizable(false); setBounds(400, 100, DIALOG_WIDTH,DIALOG_HEIGHT); getContentPane().setLayout(new BorderLayout()); contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5)); getContentPane().add(contentPanel, BorderLayout.CENTER); contentPanel.setLayout(null); //設(shè)置居中 //setLocation(WindowXY.getXY(LoginDialog.this.getSize())); JButton btnNewButton = new JButton("注 冊"); btnNewButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { if(LoginDialog.this.getHeight()==DIALOG_HEIGHT_EXTEND){ LoginDialog.this.setSize(DIALOG_WIDTH,DIALOG_HEIGHT); } else{ LoginDialog.this.setSize(DIALOG_WIDTH,DIALOG_HEIGHT_EXTEND); } } }); btnNewButton.setBounds(53, 224, 93, 23); contentPanel.add(btnNewButton); JButton btnNewButton_1 = new JButton("登 錄"); btnNewButton_1.setBounds(190, 224, 93, 23); contentPanel.add(btnNewButton_1); textField = new JTextField(); textField.setBounds(133, 147, 150, 25); contentPanel.add(textField); textField.setColumns(10); textField_1 = new JTextField(); textField_1.setBounds(133, 182, 150, 25); contentPanel.add(textField_1); textField_1.setColumns(10); JLabel lblNewLabel = new JLabel("郵 箱"); lblNewLabel.setBounds(53, 151, 54, 15); contentPanel.add(lblNewLabel); JLabel lblNewLabel_1 = new JLabel("密 碼"); lblNewLabel_1.setBounds(53, 194, 54, 15); contentPanel.add(lblNewLabel_1); JLabel lblNewLabel_2 = new JLabel("New label"); lblNewLabel_2.setBounds(0, 0, 360, 136); ImageIcon icon=new ImageIcon(LoginDialog.class.getResource("/res/login.jpg")); icon=ImageScale.getImage(icon, lblNewLabel_2.getWidth(), lblNewLabel_2.getHeight()); lblNewLabel_2.setIcon((icon)); contentPanel.add(lblNewLabel_2); JPanel panel = new JPanel(); panel.setBorder(new TitledBorder(null, "\u6CE8\u518C\u7528\u6237", TitledBorder.LEADING, TitledBorder.TOP, null, null)); panel.setBounds(12, 259, 336, 221); contentPanel.add(panel); panel.setLayout(null); JLabel lblNewLabel_3 = new JLabel("郵 箱"); lblNewLabel_3.setBounds(41, 29, 55, 18); panel.add(lblNewLabel_3); JLabel lblNewLabel_4 = new JLabel("驗證碼"); lblNewLabel_4.setBounds(41, 85, 55, 18); panel.add(lblNewLabel_4); JLabel lblNewLabel_5 = new JLabel("密 碼"); lblNewLabel_5.setBounds(41, 115, 55, 18); panel.add(lblNewLabel_5); JLabel label = new JLabel("確認密碼"); label.setBounds(41, 145, 55, 18); panel.add(label); textField_2 = new JTextField(); textField_2.setBounds(123, 22, 150, 25); panel.add(textField_2); textField_2.setColumns(10); textField_3 = new JTextField(); textField_3.setBounds(123, 80, 150, 25); panel.add(textField_3); textField_3.setColumns(10); textField_4 = new JTextField(); textField_4.setBounds(123, 113, 150, 25); panel.add(textField_4); textField_4.setColumns(10); textField_5 = new JTextField(); textField_5.setBounds(123, 145, 150, 25); panel.add(textField_5); textField_5.setColumns(10); JButton btnNewButton_2 = new JButton("發(fā)送驗證碼"); btnNewButton_2.setBounds(123, 52, 83, 23); panel.add(btnNewButton_2); JButton btnNewButton_3 = new JButton("取 消"); btnNewButton_3.setBounds(51, 182, 83, 27); panel.add(btnNewButton_3); JButton btnNewButton_4 = new JButton("確 認"); btnNewButton_4.setBounds(190, 182, 83, 27); panel.add(btnNewButton_4); } }
工具類 com.lsh.util.ImageScale
package com.lsh.util; import java.awt.Image; import javax.swing.ImageIcon; public class ImageScale { public static ImageIcon getImage(ImageIcon icon,int width,int height){ Image image=icon.getImage().getScaledInstance(width, height,Image.SCALE_REPLICATE); icon.setImage(image); return icon; } }
工具類 com.lsh.util.WindowXY
package com.lsh.util; import java.awt.Dimension; import java.awt.Point; import java.awt.Toolkit; public class WindowXY { public static Point getXY(int w,int h){ Toolkit toolkit=Toolkit.getDefaultToolkit(); int width=toolkit.getScreenSize().width; int height=toolkit.getScreenSize().height; return new Point((width-w)/2,(height-h)/2); } public static Point getXY(Dimension dimension) { return getXY(dimension.width, dimension.height); } }
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Springboot集成百度地圖實現(xiàn)定位打卡的示例代碼
本文主要介紹了Springboot集成百度地圖實現(xiàn)定位打卡的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2024-02-02java自定義動態(tài)鏈接數(shù)據(jù)庫示例
這篇文章主要介紹了java自定義動態(tài)鏈接數(shù)據(jù)庫示例,需要的朋友可以參考下2014-02-02SpringBoot整合Flyway實現(xiàn)數(shù)據(jù)庫的初始化和版本管理操作
Flyway?是一款開源的數(shù)據(jù)庫版本管理工具,它可以很方便的在命令行中使用,或者在Java應(yīng)用程序中引入,用于管理我們的數(shù)據(jù)庫版本,這篇文章主要介紹了SpringBoot整合Flyway實現(xiàn)數(shù)據(jù)庫的初始化和版本管理,需要的朋友可以參考下2023-06-06區(qū)分Java中的ArrayList和LinkedList
這篇文章主要介紹了如何區(qū)分Java中ArrayList和LinkedList,文中講解非常細致,代碼幫助大家更好的理解和學習,感興趣的朋友可以了解下2020-06-06IDEA2020.1構(gòu)建Spring5.2.x源碼的方法
這篇文章主要介紹了IDEA2020.1構(gòu)建Spring5.2.x源碼的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-10-10java中InputStream獲取字節(jié)大小相關(guān)方法詳解
這篇文章主要給大家介紹了關(guān)于java中InputStream獲取字節(jié)大小相關(guān)方法的相關(guān)資料,在Java中要實現(xiàn)讀取文件大小,可以使用InputStream來讀取文件的內(nèi)容,并通過獲取讀取的字節(jié)數(shù)來得到文件的大小,需要的朋友可以參考下2023-11-11JAVA新手小白學正則表達式、包裝類、自動裝箱/自動拆箱以及BigDecimal
這篇文章主要給大家介紹了關(guān)于JAVA新手小白學正則表達式、包裝類、自動裝箱/自動拆箱以及BigDecimal的相關(guān)資料,文中通過實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2022-03-03