<2009年5月>
          262728293012
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          統(tǒng)計

          • 隨筆 - 11
          • 文章 - 2
          • 評論 - 1
          • 引用 - 0

          常用鏈接

          留言簿(3)

          隨筆分類

          隨筆檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          [轉(zhuǎn)]困擾了我一天的GridBagLayout終于解決了!
          首先GridBagLayout這個布局治理器類只有一個構(gòu)造函數(shù);但是它必須和GridBagConstraints這個它的約束對象一起使用來設(shè)置組件的大小和位置!

          說到這里不得不說GridBagConstraints的幾個至關(guān)重要的屬性fill , anchor, gridx, gridy, weightx, weighty , gridwidth, gridheight , insets ipdax ,ipday

          首先FILL的作用就是當組件的大小小于它的顯示區(qū)域的時候設(shè)置是否改變它的大小由它的幾個常量值GridBagConstraints.BOTH/NONE/VERTICAL/HORIZONTAL決定!

          接著就是gridx,gridy這是組件的放置位置就不用說了

          gridwidth ,gridheight這是擴大組件的顯示區(qū)域的大小的一個是水平一個是垂直的

          還有就是anchor是組件小于顯示區(qū)域的時候組件的默認放置位置也就是東南西北中幾個屬性值

          還有就是insets是幾個組件的間距它有個構(gòu)造函數(shù)new INSETS(a,b,c,d) 分別是上中下右的間距

          還有就是內(nèi)部的艱巨ipdax ipday 還有weightx weighty用來設(shè)置窗口變大時,各組件跟著變大的比例,當數(shù)字越大,表示組件能得到更多的空間,默認值皆為0。當然還有其它很多小細節(jié) 我很懶所以自己去官方的API


          你不要看說得這么簡單但你要深刻體會其中的精髓卻不輕易!!!!!!!!!!!

          我自己的總結(jié):當你設(shè)置組件的大小的時候務(wù)必要設(shè)置FILL屬性假如不設(shè)那么任你怎么設(shè)置GRIDWIDTH 和GRIDHEIGHT的值那個組件是肯定不會變的還是默認值給

          莫慌啊在想想啊 哦 還有當你設(shè)置了FILL為GridBagConstraints.BOTH的話你假如其它的組件不重新改設(shè)FILL那肯定水平會隨著你的應(yīng)用程序窗口慢慢拉大而變長!所以要記者 假如不想被拉大就必須重設(shè)它的值

          還有g(shù)ridwidth 和gridheight官方說的是改變顯示區(qū)域的大小 但是我自己認為應(yīng)該是長和寬的比例給

          還有REMAINDER和RELATIVE這兩個屬性也很重要其中的自己慢慢體會因為用在GridBagConstraints的不同的屬性上效果也不同所

          RELATIVE
          指定此組件為其行或列(gridwidth、gridheight)中的倒數(shù)第二個組件,或者讓此組件緊跟在以前添加的組件(gridx、gridy)之后

          REMAINDER
          指定此組件是其行或列中的最后一個組件

          (( 而且默認拉大窗口不會增大顯示區(qū)域 而且假如設(shè)置了 gridwidth = GridBagConstraints.REMAINDER那么即使設(shè)置了WEIGHTX=0.0這個組件和它的左面一個也會拉大!

          其中的好處自己以后設(shè)計GUI是就會慢慢體會了

          似乎現(xiàn)在只記得這么多了

          假如以后想起會寫的

          因為我當初為了這個去BAIDU GOOGLE去搜遍了感覺都是些書書上的樣 說得不太清楚

          所以希望學(xué)這個的不要走彎路!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!祝大家設(shè)計GUI做得越來越漂亮!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


          ---------------------------------------------------------------------------------------
          ——使你疲勞的不是遠方的高山,而是你鞋里一粒沙子!

          posted on 2009-05-21 09:30 鋒行 閱讀(3125) 評論(0)  編輯  收藏 所屬分類: Swing

          主站蜘蛛池模板: 阿瓦提县| 开平市| 都江堰市| 宝鸡市| 瑞安市| 山西省| 监利县| 营山县| 布尔津县| 北川| 三河市| 皮山县| 察哈| 邮箱| 纳雍县| 湄潭县| 延津县| 安乡县| 奉化市| 阳原县| 勐海县| 舟山市| 科技| 平昌县| 浙江省| 德兴市| 贡山| 政和县| 师宗县| 武乡县| 阳信县| 古蔺县| 康平县| 肥城市| 元阳县| 泸西县| 灵台县| 靖边县| 乌恰县| 广河县| 马边|