時間:2023-09-05 21:12:02 | 來源:網站運營
時間:2023-09-05 21:12:02 來源:網站運營
怎樣制作一個簡單的登陸與注冊界面:最開始,我們要用import導入我們需要用的類和包import java.awt.Color; //顏色import java.awt.Dimension; //尺寸import java.awt.FlowLayout; //流式布局器import javax.swing.JCheckBox; //復選框import javax.swing.JFrame; //窗體import javax.swing.JButton; //按鈕import javax.swing.JLabel; //標簽import javax.swing.JTextField; //輸入框import javax.swing.JPasswordField;import javax.swing.ImageIcon; //圖片
接下來,我們開始寫我們的頁面內容public class LoginUI { public void ShowUI() { //創(chuàng)建一個登錄頁面類 JFrame loginFrame = new JFrame(); //創(chuàng)建一個窗體對象 //給窗體對象設置屬性 loginFrame.setTitle("登陸界面"); loginFrame.setSize(400,400);//頂級容器設置大小 loginFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//進程關閉 loginFrame.setLocationRelativeTo(null);//居中顯示 loginFrame.setResizable(true);//設置是否可以改變大小 //創(chuàng)建流式布局器對象 FlowLayout fl = new FlowLayout(); loginFrame.setLayout(fl);//設置布局
設置好窗體,我們來設置我們的組件,接下來分為三個步驟: JButton loginbtn = new JButton("登錄");//按鈕 JButton rbtn = new JButton("注冊"); //圖片 --需要標簽 圖片路徑 + 圖片名+ 圖片格式 ImageIcon img = new ImageIcon("img/qq.png"); //標簽 JLabel imgfla = new JLabel (img); JLabel nameJla = new JLabel("賬號"); JTextField nameField =new JTextField();//設置輸入框 JLabel pwdJla = new JLabel("密碼"); JPasswordField pwdField = new JPasswordField(); JCheckBox checkBox = new JCheckBox("忘記密碼");//復選框
Dimension dim = new Dimension(330,30);// 尺寸 nameField.setPreferredSize(dim);//組件設置大小的方法 pwdField.setPreferredSize(dim); //按鈕顏色 loginbtn.setBackground(Color.WHITE); rbtn.setBackground(Color.WHITE);
3.將組件加到窗體上 loginFrame.add(imgfla); loginFrame.add(nameJla); loginFrame.add(nameField); loginFrame.add(pwdJla); loginFrame.add(pwdField); loginFrame.add(loginbtn); loginFrame.add(rbtn); loginFrame.add(checkBox);
寫完窗體和組件之后最關鍵的一步就是loginFrame.setVisible(true);//可視化
如果沒有上面這一行代碼,我們所寫的窗體以及組件都不可視。public static void main(String[]args){ LoginUI loginUI = new LoginUI(); loginUI.ShowUI(); } }
類似的,注冊界面也可用上面的步驟寫得public void registerPerformed(){ JFrame registerFrame = new JFrame();//創(chuàng)建窗體對象 //給窗體對象設置屬性 registerFrame.setTitle("注冊界面"); registerFrame.setSize(400,400); registerFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); registerFrame.setLocationRelativeTo(null); registerFrame.setResizable(true); FlowLayout fl = new FlowLayout(); registerFrame.setLayout(fl); JLabel rnameJla = new JLabel("賬號"); rnameField =new JTextField(); JLabel rpwdJla = new JLabel("密碼"); rpwdField = new JPasswordField(); JButton rbtn = new JButton("點擊注冊"); Dimension rdim = new Dimension(330,30); rnameField.setPreferredSize(rdim); rpwdField.setPreferredSize(rdim); rbtn.setBackground(Color.WHITE); registerFrame.add(rnameJla); registerFrame.add(rnameField); registerFrame.add(rpwdJla); registerFrame.add(rpwdField); registerFrame.add(rbtn); }
public class LoginUIListener implements ActionListener{
getActionCommand()用于獲取用戶點擊的按鈕的字符串String btnstr = e.getActionCommand(); //得到當前點擊按鈕的字符串
接下來,我們要根據用戶點擊的按鈕來給應相應的的動作 if(btnstr.equals("登錄")){ //根據取到的登錄賬號密碼 來與注冊的賬戶密碼比較 if(rName.equals(rnameField.getText())&&rpwd.equals(rpwdField.getText())){ System.out.println("完成登錄"); } else{ System.out.println("請重試!"); } } else if(btnstr.equals("注冊")){ registerPerformed();//調用注冊界面 } // 根據輸入框對象來取輸入的字符串 else if(btnstr.equals("點擊注冊")){ rName = rnameField.getText(); rpwd = rpwdField.getText(); }
在此之前,我們要定義幾個全局變量。 JTextField rnameField; JTextField rpwdField; JTextField nameField; JTextField pwdField; String rName; String rpwd; // 聲明兩個空的輸入框屬性
最后,我們要在登陸界面建立動作監(jiān)聽器對象,來使按鈕得到響應 // 監(jiān)聽器 // 先創(chuàng)建 一個實現了動作監(jiān)聽器接口的類 的對象 LoginUIListener loginListener = new LoginUIListener(); // 給按鈕添加動作監(jiān)聽器 loginbtn.addActionListener(loginListener); rbtn.addActionListener(loginListener); // 輸入框對象傳遞 -- 利用的監(jiān)聽器類的對象 loginListener.nameField = nameField; loginListener.pwdField = pwdField;
這樣,我們就可以得到一個簡單的登陸,注冊界面了關鍵詞:登陸,注冊,界面,簡單,怎樣