隨筆 - 303  文章 - 883  trackbacks - 0
          <2007年2月>
          28293031123
          45678910
          11121314151617
          18192021222324
          25262728123
          45678910

          歡迎光臨! 
          閑聊 QQ:1074961813

          隨筆分類(357)

          我管理的群

          公共blog

          • n維空間
          • Email : java3d@126.com 群 : 12999758

          參與管理的論壇

          好友的blog

          我的其他blog

          朋友的網(wǎng)站

          搜索

          •  

          最新評(píng)論

          /*
          ?? 朋友你好?。∥沂菍ひ挘@個(gè)代碼是網(wǎng)上找的,有個(gè)網(wǎng)友最近在弄
          ????? 我注釋了一下,給大家看,由于剛剛接觸,寫(xiě)錯(cuò)之處還請(qǐng)指出,謝謝支持!
          ??? AWT包括4個(gè)主要的類:
            Component(構(gòu)件)——菜單、按鈕、標(biāo)簽、列表等構(gòu)件的抽象基本類
            Container(容器)——擴(kuò)展Component的抽象基本類。由Container演變的類,如Panel、Applet、
          ??????? Window、Dialog和Frame等
            LayoutManager(布局管理器)——定義容器中構(gòu)件位置和尺寸方法的接口
            Graphics(圖形類)——定義構(gòu)件內(nèi)圖形操作的基本類,每個(gè)構(gòu)件都有一個(gè)相關(guān)的圖形對(duì)象
          ??? (具體內(nèi)容大家自己查API文檔)
          */

          ??1 import ?java.awt.Component;
          ??2 import ?java.awt.Container;
          ??3 import ?java.awt.GraphicsEnvironment;
          ??4 import ?java.awt.GridBagConstraints;
          ??5 import ?java.awt.GridBagLayout;
          ??6
          ??7 import ?javax.swing.JCheckBox;
          ??8 import ?javax.swing.JComboBox;
          ??9 import ?javax.swing.JFrame;
          ?10 import ?javax.swing.JLabel;
          ?11 import ?javax.swing.JPanel;
          ?12 import ?javax.swing.JTextArea;
          ?13
          ?14 public ? class ?GirdBagLayoutTest
          ?15 {
          ?16
          ?17 ???? public ? static ? void ?main(String[]?args)????????????????????????? // 主函數(shù)創(chuàng)建
          ?18 ???? {
          ?19 ????????GirdBagLayoutFrame?frame? = ? new ?GirdBagLayoutFrame();??????? // 窗口創(chuàng)建
          ?20 ????????frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);?????? // 設(shè)置默認(rèn)關(guān)閉操作??
          ?21 ????????frame.setVisible( true );???????????????????????????????????? // 設(shè)置組件可視化
          ?22 ????}

          ?23 }

          ?24
          ?25 class ?GirdBagLayoutFrame? extends ?JFrame
          ?26 {
          ?27 ???? public ?GirdBagLayoutFrame()
          ?28 ???? {
          ?29 ????????setTitle( " 網(wǎng)格組事件 " );??????????????????????
          ?30 ????????setSize( 300 , 150 );??????????????????????????????????? // 窗口大小
          ?31
          ?32 ????????Container?con? = ?getContentPane();???????????????????? // 創(chuàng)建容器
          ?33 ????????GirdBagLayoutPanel?panel? = ? new ?GirdBagLayoutPanel();???? // 創(chuàng)建畫(huà)板
          ?34 ????????con.add(panel);????????????????????????????????????????? // 將畫(huà)板加如容器
          ?35 ????}

          ?36 }

          ?37
          ?38 class ?GirdBagLayoutPanel? extends ?JPanel
          ?39 {
          ?40 ???? public ?JLabel?lname,?lsize;??????????????????????????????? // 創(chuàng)建兩個(gè)標(biāo)簽
          ?41
          ?42 ???? public ?JComboBox?cname,?csize;??????????????????????????? // 創(chuàng)建兩個(gè)列表框
          ?43
          ?44 ???? public ?JCheckBox?bold,?italic;??????????????????????????? // 創(chuàng)建兩個(gè)復(fù)選框
          ?45
          ?46 ???? public ?JTextArea?area;???????????????????????????????????? // 創(chuàng)建文本書(shū)寫(xiě)
          ?47
          ?48 ???? public ?GirdBagLayoutPanel()??????????????????????????????? // 重點(diǎn),加入組件
          ?49 ???? {
          ?50 ????????lname? = ? new ?JLabel( " Name " );???????????????????????????? // 初始化兩個(gè)標(biāo)簽
          ?51 ????????lsize? = ? new ?JLabel( " Size " );
          ?52 ????????String[]?fonts? = ?GraphicsEnvironment.getLocalGraphicsEnvironment() // 調(diào)用GraphicsEnvironment關(guān)于本地的一個(gè)
          ?53 ????????????????.getAvailableFontFamilyNames();??????????????? // 方法getLocalGraphicsEnvironment()接著繼續(xù)調(diào)用
          ?54 ?????????????????????????????????????????????????????????????? // 抽象類getAvailableFontFamilyNames
          ?55 ?????????????????????????????????????????????????????????????? // 這里創(chuàng)建的變量fonts用于向用戶展示特定字體系列名稱
          ?56
          ?57 ????????cname? = ? new ?JComboBox(fonts);??????????????????????????? // 將font加入
          ?58 ????????csize? = ? new ?JComboBox( new ?String[]
          ?59 ???????? {? " 8 " ,? " 12 " ,? " 14 " ,? " 16 " ,? " 18 " ,? " 20 " ,? " 24 " ,? " 26 " ,? " 36 " ?} );? // 普通列表框加入,字體大小
          ?60
          ?61 ????????bold? = ? new ?JCheckBox( " Bold " );?????????????????????????? // 設(shè)置兩個(gè)復(fù)選旁邊的標(biāo)簽
          ?62 ????????italic? = ? new ?JCheckBox( " Italic " );
          ?63 ????????area? = ? new ?JTextArea( " 歡迎來(lái)到太湖 " );????????????????? // 在文本寫(xiě)入部分寫(xiě)入內(nèi)容
          ?64 ????????area.setLineWrap( true ); // 自動(dòng)換行?????????????????????? // 在文本寫(xiě)入部分設(shè)置允許換行
          ?65 ???????? // 實(shí)例化網(wǎng)格組布局
          ?66 ? // ************************重中之重******************************************************/???
          ?67 ????????GridBagLayout?layout? = ? new ?GridBagLayout();
          ?68 ???????? // GridBagLayout在AWT里用于設(shè)置布局管理
          ?69 ????????setLayout(layout);
          ?70 ???????? // 實(shí)例化網(wǎng)格組布局的限制類(此類協(xié)助網(wǎng)格組布局類完成工作)
          ?71 ????????GridBagConstraints?constraints? = ? new ?GridBagConstraints();
          ?72 ???????? // 創(chuàng)建加組件的容器
          ?73 ????????constraints.anchor? = ?GridBagConstraints.EAST; // 居右對(duì)齊
          ?74 ????????constraints.fill? = ?GridBagConstraints.NONE; // 不填充
          ?75 ????????constraints.weightx? = ? 0 ;? // 水平方向不縮放
          ?76 ????????constraints.weighty? = ? 0 ;? // 垂直方向不縮放??0代表不縮放?100代表縮放
          ?77 ???????? // 容器設(shè)置結(jié)束,開(kāi)始加組件
          ?78 ???????? // 這里要先向大家解釋這個(gè):(constraints"約束",?“控件的”x?“坐標(biāo)”,?y?"坐標(biāo)"?,?“寬度”?,"高度")
          ?79 ???????? // 具體實(shí)現(xiàn)方法看下面的addObj函數(shù);
          ?80 ????????addObj(constraints, 0 , 0 , 1 , 1 ,lname);??? // 加入兩個(gè)標(biāo)簽
          ?81 ????????addObj(constraints, 0 , 1 , 1 , 1 ,lsize);
          ?82 ????????
          ?83 ????????constraints.fill? = ?GridBagConstraints.HORIZONTAL; // 水平填充
          ?84 ????????constraints.weightx? = ? 100 ; // 水平縮放
          ?85 ????????addObj(constraints, 1 , 0 , 1 , 1 ,cname);
          ?86 ????????addObj(constraints, 1 , 1 , 1 , 1 ,csize);
          ?87 ????????
          ?88 ????????constraints.weighty? = ? 100 ; // 垂直縮放
          ?89 ????????constraints.fill? = ?GridBagConstraints.NONE; // 不填充
          ?90 ????????constraints.anchor? = ?GridBagConstraints.CENTER; // 居中對(duì)其
          ?91 ????????addObj(constraints, 0 , 2 , 2 , 1 ,bold);
          ?92 ????????addObj(constraints, 0 , 2 , 6 , 1 ,italic);
          ?93 ????????
          ?94 ????????constraints.fill? = ?GridBagConstraints.BOTH; // 水平垂直都填充
          ?95 ????????addObj(constraints, 2 , 0 , 1 , 4 ,area);
          ?96 // ***************************************************************************************/??????????????????????
          ?97 ????}

          ?98 ????
          ?99 ???? // 方法,注意加控件的函數(shù)是沒(méi)有返回值的;
          100 ???? public ? void ?addObj(GridBagConstraints?gc, int ?x, int ?y, int ?w, int ?h,
          101 ???????????????????????Component?c) // 傳遞參數(shù)?Component?主鍵
          102 ???? {
          103 ????????gc.gridx? = ?x;
          104 ????????gc.gridy? = ?y;
          105 ????????gc.gridwidth? = ?w;
          106 ????????gc.gridheight? = ?h;
          107 ????????add(c,gc);
          108 ????}

          109 }

          110
          111


          地震讓大伙知道:居安思危,才是生存之道。
          posted on 2007-02-28 15:00 小尋 閱讀(433) 評(píng)論(0)  編輯  收藏 所屬分類: j2se/j2ee/j2me
          主站蜘蛛池模板: 揭东县| 峨边| 碌曲县| 赞皇县| 泰州市| 高台县| 阿克| 奉新县| 卢龙县| 绍兴县| 莱阳市| 兴仁县| 玉门市| 阜康市| 井研县| 图木舒克市| 涿州市| 南和县| 木兰县| 启东市| 临安市| 河津市| 竹北市| 滦南县| 镇雄县| 罗山县| 涿鹿县| 贵南县| 长宁县| 容城县| 孝感市| 邢台市| 来凤县| 澄城县| 泰兴市| 山东省| 芮城县| 舒城县| 横峰县| 郓城县| 新化县|