Java學習筆記之三——Java使用者登陸介面

來源:互聯網
上載者:User

好久沒有總結這個月的學習了,先嘮叨幾句,這個月工作爛的一塌糊塗。跟老闆吵架,然後辭職。今天是遞交辭職申請的倒數第三天。

Java使用者登陸這塊,主要還是學到了新的類:

1,邊界布局:BorderLayout。他主要分為五個布局,是JFrame(頂層容器),JDialog(建立對話方塊視窗的類)的預設布局方式。其最多容量為5個組件,超出5個得用其他的。設定方式為:BorderLayout.NORTH;BorderLayout.SOUTH;BorderLayout.CENTER;Borderlayout.CENTER;BorderLayout.LEFT;BorderLayout.RIGHT。

2,流式布局:FlowLayout。布局方式為從左至右,從上到下。是JPanel(輕量級容器)的預設面板布局。

3,網格布局:GridLayout。布局方式為行和列組成的網路。布局方法:setLayout(new GridLayout(3,2,3,3));其中強兩位元字表示三行兩列,後兩位表示行與行的間距為3,列與列的間距為3.

接著,就接觸到JPanel面板。JPanel是非頂層容器,所以,一個介面只能由一個JFrame,但是可以有多個JPanel組件。其預設布局方式為流式布局。在JPanel這塊,學到了使用者登入介面的設計。從而接觸到另外三個組件:文字框組件:JTextField;密碼框組件:JPasswordField;標籤組件:JLabel;複選框組件:JCheckBox;單選框組件:JRadioButton;按鈕組件JButton。

根據上面的組件和布局方式,我試著做了如下效果的一些代碼:

1,使用者登陸介面:

具體代碼如下:

 1 import javax.swing.*; 2  3 import java.awt.*;   //匯入必要的包 4  5 public class denglu extends JFrame{ 6     JTextField jTextField ;  //定義文字框組件 7     JPasswordField jPasswordField;    //定義密碼框組件 8     JLabel jLabel1,jLabel2; 9     JPanel jp1,jp2,jp3;10     JButton jb1,jb2;     //建立按鈕11     public denglu(){12         jTextField = new JTextField(12);13         jPasswordField = new JPasswordField(13);14         jLabel1 = new JLabel("使用者名稱");15         jLabel2 = new JLabel("密碼");16         jb1 = new JButton("確認");17         jb2 = new JButton("取消");18         jp1 = new JPanel();19         jp2 = new JPanel();20         jp3 = new JPanel();21         22         //設定布局23         this.setLayout(new GridLayout(3,1));24         25         jp1.add(jLabel1); 26         jp1.add(jTextField);//第一塊面板添加使用者名稱和文字框 27         28         jp2.add(jLabel2);29         jp2.add(jPasswordField);//第二塊面板添加密碼和密碼輸入框30         31         jp3.add(jb1);32         jp3.add(jb2); //第三塊面板添加確認和取消33         34         //        jp3.setLayout(new FlowLayout());    //因為JPanel預設布局方式為FlowLayout,所以可以登出這段代碼.35         this.add(jp1);36         this.add(jp2);37         this.add(jp3);  //將三塊面板添加到登陸框上面38         //設定顯示39         this.setSize(300, 200);40         //this.pack();41         this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);42         this.setVisible(true);43         this.setTitle("登陸");44          45     }46     public static void main(String[] args){47         new denglu();48     }49 }

2,根據複選框組件等其他組件,又寫了使用者調查介面:

具體代碼:

 1 import javax.swing.ButtonGroup; 2 import javax.swing.JCheckBox; 3 import javax.swing.JFrame; 4 import javax.swing.JLabel; 5 import javax.swing.JPanel; 6 import javax.swing.JRadioButton; 7  8 import java.awt.*; 9 10 public class diaocha extends JFrame{11     JCheckBox jcb1,jcb2,jcb3;12     JRadioButton jrb1,jrb2;13     JLabel jLabel1,jLabel2;14     JPanel jp1,jp2;15     public diaocha(){16         jcb1 = new JCheckBox("華商報");17         jcb2 = new JCheckBox("三秦都市報");18         jcb3 = new JCheckBox("西安晚報");19         jrb1 = new JRadioButton("男");20         jrb2 = new JRadioButton("女");21         jLabel1 = new JLabel("您最常讀的報紙");22         jLabel2 = new JLabel("您的性別");23         jp1 = new JPanel();24         jp2 = new JPanel();25         //設定布局26         this.setLayout(new GridLayout(2, 1));27         //添加組件28         jp1.add(jLabel1);29         jp1.add(jcb1);30         jp1.add(jcb2);31         jp1.add(jcb3);32         jp2.add(jLabel2);33         //現在這樣的話,最後還是會對性別進行全部選擇的。所以添加按鈕對象,對同一組選項按鈕驚醒分組34         ButtonGroup bGroup = new ButtonGroup();35         bGroup.add(jrb1);36         bGroup.add(jrb2);37         jp2.add(jrb1);38         jp2.add(jrb2);39         this.add(jp1);40         this.add(jp2);41         42         //設定展示面板43         this.setVisible(true);44         this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);45         this.setSize(200, 200);46     }47     public static void main(String[] args){48         new diaocha();49     }50 }

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.