使用绝对布局的方法创建一个登录密码验证的简易窗口
生活随笔
收集整理的這篇文章主要介紹了
使用绝对布局的方法创建一个登录密码验证的简易窗口
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
絕對布局是指直接采用坐標指定的方式在容器中創建窗口,這種方式比較靈活
采用這種方法創建布局的方式主要有以下幾步:
下面先上代碼
import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener;public class UseCase3 extends JFrame {/****/private static final long serialVersionUID = 1L;public UseCase3() {setTitle("登錄窗體");setBounds(300, 200, 300, 150);//絕對布局,不使用布局管理器Container cp = getContentPane();cp.setLayout(null);JLabel jl = new JLabel("用戶名:");jl.setBounds(10, 10, 200, 18);final JTextField name = new JTextField();name.setBounds(80, 10, 150, 18);JLabel jl2 = new JLabel("密碼:");jl2.setBounds(10, 50, 200, 18);final JPasswordField password = new JPasswordField();password.setBounds(80, 50, 150, 18);cp.add(jl);cp.add(name);cp.add(jl2);cp.add(password);JButton jb = new JButton("確定");jb.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent arg0) {if (name.getText().trim().length() == 0|| new String(password.getPassword()).trim().length() == 0) {JOptionPane.showMessageDialog(null, "用戶名密碼不允許為空");return;}if (name.getText().trim().equals("mr")&& new String(password.getPassword()).trim().equals("mrsoft")) {JOptionPane.showMessageDialog(null, "登錄成功");} else {JOptionPane.showMessageDialog(null, "用戶名或密碼錯誤");}}});jb.setBounds(80, 80, 60, 18);cp.add(jb);final JButton button = new JButton();button.setText("重置");button.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent arg0) {// TODO 自動生成方法存根name.setText("");password.setText("");}});button.setBounds(150, 80, 60, 18);getContentPane().add(button);setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);setVisible(true);}public static void main(String[] args) {new UseCase3();}}下面我來簡易分析一下代碼的邏輯
密碼驗證功能的核心實現:這里只是簡單的密碼驗證,并不涉及到過多的算法,下面著重看一下密碼驗證部分:
getText()來獲取輸入的密碼文本,trim()來去除兩邊多余的空格,首先我們需要判斷這個框里有東西,這就用到了length()==0的驗證方法,這個不難。
后面用到的JOptionPane()方法里面的null可以理解為直接獲取返回值,不用過多的去管它。
可以看到后面所謂的“登錄驗證”無非就是用戶名與所設密碼的一個與運算罷了,兩個都符合的話就可以登陸了(此實例中并不涉及到后臺接口的相關問題)
用戶輸入錯誤的密碼怎么辦呢?
這里提供一個快速重置的方法,先上代碼:
final JButton button = new JButton();button.setText("重置");button.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent arg0) {// TODO 自動生成方法存根name.setText("");password.setText("");可以看到,無非就是提供了一個所謂的重置按鈕,觸發的事件是將name與password里的名稱重置為空字符串,這樣就完成了重置的作用,不過也可以將密碼和賬號名單獨分開,這樣對用戶來說比較友好,畢竟不是所有人都會同時輸錯密碼與賬號
最后一調用,結果就出來了
public static void main(String[] args) {new UseCase3();}GUI界面如下:
總結
以上是生活随笔為你收集整理的使用绝对布局的方法创建一个登录密码验证的简易窗口的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 安卓滑动解锁广告(安卓滑动解锁)
- 下一篇: 通信工程制图期末考试大纲