国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

java---Swing界面開發總結

2019-11-15 00:14:45
字體:
來源:轉載
供稿:網友
java---Swing界面開發總結

一、java的圖形界面

1.awt java.awt

jdk1.4之前推出的圖形界面,用c/c++編寫,跨平臺性不好

2.swing javax.swing

jdk1.4時推出的圖形界面,跨平臺性好

二、常用的組件

1.容器組件

JFrame 窗體類 最頂級的容器(默認布局為邊框布局,不能自己互相添加)

JPanel 面板類 最靈活的容器(可以自己互相添加)

2.元素組件

JLabel 標簽類

JTextField 文本輸入框類(可以設置框內字符、輸入框長度)

JPassWordField 密碼輸入框類(框內字符會被特定字符代替)

JCheckBox 復選框類

JComboBox 下拉框類

JButton 按鈕類

容器和組件都是swing包下的類。javax.swing.JFrame

三、常用的布局

1.布局類只能用在容器中。設置布局時需用setLayout()

BorderLayout 邊框布局(將窗體分為上下左右中五個區域,調用時分別.NORTH,.SOUTH,.WEST,.EAST,.CENTER,若未標明表示CENTER,未添加布局時默認為邊框布局加在中央)

FlowLayout 流式布局(如同文本文檔一樣一行一行排列,排列滿換行,默認方向為從左向右,可以設置對齊方向)

GridLayout 網格布局(可以設置幾列幾行,間距)

這三種都是位于awt包下的類。java.awt.***Layout

四、簡單登錄界面的實現

1.新建一個xxx類(Login),在類中定義主函數。

2.在類中定義一個初始化界面的方法(initUI)

3.在初始化界面的方法中,實例化一個頂級容器(JFrame)類的對象。

4.設置JFrame對象的屬性值(標題,大小,顯示位置,關閉退出程序,禁止調整大小,可見,該步完成對一個窗體的創建)

5.實例化元素組件對象,將對象添加到窗體上

6.在主函數中實例化Login類的對象,用對象名調用初始化界面的方法。

注:setDefaultCloSEOperation()括號中可選數字,3是關閉時退出程序。0是不關閉。1是隱藏,2是關閉時程序繼續工作。

setVisible(true)必須放在最后才能顯示所有組件。true為可見。

setSize()大小為像素點的大小。默認起點為左上角。

五、代碼

1.簡單的登錄界面

可以用流式布局或者邊框布局。

Java代碼

package cn.wz.study0718;  //定義一個登錄界面  public class showFrameQQ {                     //  入口主函數                 public static void main(String[] args) {          // 實例化showFrameqq類的對象          showFrameqq showqq = new showFrameqq();          //調用qq界面的方法          showqq.initGUI();           }      //定義一個qq界面的方法      public void initGUI(){          //實例化一個JFrame類的對象          javax.swing.JFrame jf = new javax.swing.JFrame();          //設置窗體的標題屬性          jf.setTitle("QQ登錄界面");          //設置窗體的大小屬性          jf.setSize(300,200);          //設置窗體的位置屬性          jf.setLocation(450,200);          //設置窗體關閉時退出程序          jf.setDefaultCloseOperation(3);          //設置禁止調整窗體的大小          jf.setResizable(false);                        //實例化一個布局類的對象          java.awt.FlowLayout fl = new java.awt.FlowLayout();           //設置窗體的布局方式為流式布局          jf.setLayout(fl);          //實例化一個JLabel標簽類的對象          javax.swing.JLabel jlaName = new javax.swing.JLabel("                                          ");          //將jlaName對象添加到容器JFrame對象上          jf.add(jlaName);          //實例化一個JTextField對象          javax.swing.JTextField jteName = new javax.swing.JTextField("賬號",20);          //將jteName對象添加到容器JFrame對象上          jf.add(jteName);          //實例化一個JLabel對象          javax.swing.JLabel jlaName2 = new javax.swing.JLabel("注冊賬號");          //將jlaName2對象添加到容器JFrame對象上          jf.add(jlaName2);          //實例化一個JPasswordField對象          javax.swing.JPasswordField jpaName = new javax.swing.JPasswordField("請輸入密碼",20);          //將jpaName對象添加到容器JFrame對象上          jf.add(jpaName);          //實例化一個JLabel對象          javax.swing.JLabel jlaName3 = new javax.swing.JLabel("找回密碼");          //將jlaName3對象添加到容器JFrame對象上          jf.add(jlaName3);          //實例化一個JCheckBox對象          javax.swing.JCheckBox jchName = new javax.swing.JCheckBox("記住密碼");          //將jchName3對象添加到容器JFrame對象上          jf.add(jchName);          //實例化一個JCheckBox對象          javax.swing.JCheckBox jchName2 = new javax.swing.JCheckBox("自動登錄");          //將jchName3對象添加到容器JFrame對象上          jf.add(jchName2);          //實例化一個JCheckBox對象          javax.swing.JButton jbuName = new javax.swing.JButton("           登             錄          ");          //將jButton對象添加到容器JFrame對象上          jf.add(jbuName);                        jf.setVisible(true);      }                 }    package cn.wz.study0718;//定義一個登錄界面public class showFrameqq {   //  入口主函數    public static void main(String[] args) {// 實例化showFrameqq類的對象showFrameqq showqq = new showFrameqq();//調用qq界面的方法showqq.initGUI();   }//定義一個qq界面的方法public void initGUI(){//實例化一個JFrame類的對象javax.swing.JFrame jf = new javax.swing.JFrame();//設置窗體的標題屬性jf.setTitle("QQ登錄界面");//設置窗體的大小屬性jf.setSize(300,200);//設置窗體的位置屬性jf.setLocation(450,200);//設置窗體關閉時退出程序jf.setDefaultCloseOperation(3);//設置禁止調整窗體的大小jf.setResizable(false);//實例化一個布局類的對象java.awt.FlowLayout fl = new java.awt.FlowLayout();//設置窗體的布局方式為流式布局jf.setLayout(fl);//實例化一個JLabel標簽類的對象javax.swing.JLabel jlaName = new javax.swing.JLabel("                                          ");//將jlaName對象添加到容器JFrame對象上jf.add(jlaName);//實例化一個JTextField對象javax.swing.JTextField jteName = new javax.swing.JTextField("賬號",20);//將jteName對象添加到容器JFrame對象上jf.add(jteName);//實例化一個JLabel對象javax.swing.JLabel jlaName2 = new javax.swing.JLabel("注冊賬號");//將jlaName2對象添加到容器JFrame對象上jf.add(jlaName2);//實例化一個JPasswordField對象javax.swing.JPasswordField jpaName = new javax.swing.JPasswordField("請輸入密碼",20);//將jpaName對象添加到容器JFrame對象上jf.add(jpaName);//實例化一個JLabel對象javax.swing.JLabel jlaName3 = new javax.swing.JLabel("找回密碼");//將jlaName3對象添加到容器JFrame對象上jf.add(jlaName3);//實例化一個JCheckBox對象javax.swing.JCheckBox jchName = new javax.swing.JCheckBox("記住密碼");//將jchName3對象添加到容器JFrame對象上jf.add(jchName);//實例化一個JCheckBox對象javax.swing.JCheckBox jchName2 = new javax.swing.JCheckBox("自動登錄");//將jchName3對象添加到容器JFrame對象上jf.add(jchName2);//實例化一個JCheckBox對象javax.swing.JButton jbuName = new javax.swing.JButton("           登   錄          ");//將jButton對象添加到容器JFrame對象上jf.add(jbuName);jf.setVisible(true);}   }

  

2.簡單的計算器界面

分析:使用網格布局。

Java代碼

package cn.wz.study0718;  //定義一個計算器界面  public class showCalculaterFrame {           //入口主函數      public static void main(String[] args) {          //實例化一個showCalculaterFrame類的對象          showCalculaterFrame showCal = new showCalculaterFrame();          //調用計算器界面的方法          showCal.initGUI();           }      //定義一個計算器界面的方法      public void initGUI(){          //實例化一個JFrame類的對象          javax.swing.JFrame jf = new javax.swing.JFrame();          //設置窗體的標題屬性          jf.setTitle("計算器");          //設置窗體的大小屬性          jf.setSize(250,350);          //設置窗體的位置屬性          jf.setLocation(400,200);          //設置窗體關閉時退出程序          jf.setDefaultCloseOperation(3);          //設置禁止調整窗體的大小          jf.setResizable(false);                        //實例化一個JTextField文本框類的對象          //javax.swing.JTextField jteName = new javax.swing.JTextField(20);          //將jteName添加到容器JFrame上          //jf.add(jteName);          //實例化一個布局類對象          java.awt.GridLayout gr = new java.awt.GridLayout(5,4);          //設置窗體的布局方式為網格布局          jf.setLayout(gr);          //實例化十九個個JButton對象、一個JTextField對象          javax.swing.JButton jb1 = new javax.swing.JButton("1");          javax.swing.JButton jb2 = new javax.swing.JButton("2");          javax.swing.JButton jb3 = new javax.swing.JButton("3");          javax.swing.JButton jb4 = new javax.swing.JButton("4");          javax.swing.JButton jb5 = new javax.swing.JButton("5");          javax.swing.JButton jb6 = new javax.swing.JButton("6");          javax.swing.JButton jb7 = new javax.swing.JButton("7");          javax.swing.JButton jb8 = new javax.swing.JButton("8");          javax.swing.JButton jb9 = new javax.swing.JButton("9");          javax.swing.JButton jb0 = new javax.swing.JButton("0");          javax.swing.JButton jba = new javax.swing.JButton("+");          javax.swing.JButton jbb = new javax.swing.JButton("-");          javax.swing.JButton jbc = new javax.swing.JButton("*");          javax.swing.JButton jbd = new javax.swing.JButton("/");          javax.swing.JButton jbe = new javax.swing.JButton("=");          javax.swing.JButton jbf = new javax.swing.JButton("AC");          javax.swing.JButton jbg = new javax.swing.JButton("sqrt");          javax.swing.JButton jbh = new javax.swing.JButton("1/x");          javax.swing.JButton jbi = new javax.swing.JButton(".");          javax.swing.JTextField jte = new javax.swing.JTextField();          //將JButton對象、JTextField對象添加到容器JFrame上          jf.add(jte);          jf.add(jbf);          jf.add(jbg);          jf.add(jbh);          jf.add(jb1);          jf.add(jb2);          jf.add(jb3);          jf.add(jba);          jf.add(jb4);          jf.add(jb5);          jf.add(jb6);          jf.add(jbb);          jf.add(jb7);          jf.add(jb8);          jf.add(jb9);          jf.add(jbc);          jf.add(jb0);          jf.add(jbi);          jf.add(jbe);          jf.add(jbd);                        //設置窗體是否可見          jf.setVisible(true);                                                }       }

  轉自:http://www.bdqn.cn/news/201307/10424.shtml


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 湘潭县| 松潘县| 广昌县| 华坪县| 云林县| 共和县| 南岸区| 安顺市| 新巴尔虎左旗| 舒兰市| 宁津县| 临颍县| 晋州市| 永丰县| 广东省| 灵武市| 惠安县| 绥阳县| 临汾市| 怀化市| 石渠县| 陵川县| 伊川县| 石城县| 湘潭县| 邓州市| 方城县| 长海县| 平安县| 岑溪市| 永修县| 绿春县| 凌源市| 正蓝旗| 潜江市| 博爱县| 临江市| 吕梁市| 喀什市| 遵义县| 壶关县|