J2EE,Documentum,GWT,EJB學習路程

          為了所愛的,和愛我的人努力

           

          GWT中remove的小問題 我的所有隨筆屬于個人總結,有不足之處請回復指出

          在GWT中,在widget的方法remove是非常常用的,但請您好好注意一個小問題:
               當你用循環remove時,請注意最好使用倒循環,因為如果你要是用正循環的話,remove一個widget后,他的下個widget就會到他的“位置”,例如:
                int count = widgetPanel.getWidgetCount() ;
                for(int i = 0 ; i < count ; i ++ )
                {
                     widgetPanel.remove(i) ;
                }
           這樣肯定會出異常的;
           因為當你remove掉第一個widget后,第二個widget就變成第一個widget了,所以,當你認為remove掉第二個時,其實是把原來的第三個widget給remove掉了;
          解決方案:
          1.倒循環:
                int count = widgetPanel.getWidgetCount() ;
                for(int i = count - 1 ; i >= 0 ; i -- )
                {
                     widgetPanel.remove(i) ;
                }
          這樣就不會出現以上的情況:)
          2.remove第一個;
             int count = widgetPanel.getWidgetCount() ;
                for(int i = 0 ; i < count ; i ++ )
                {
                     widgetPanel.remove(0) ;
                }
          這種方法,也正說明了GWT轉換成javascript后的特性,它是根據remove的元素,在他父元素里的“位置”進行remove,這點是和Swing最大的區別,一定要注意喲:)

          posted on 2007-03-21 01:46 田亮 閱讀(1292) 評論(1)  編輯  收藏 所屬分類: GWT

          評論

          # 不錯 2007-07-27 13:37 魔王

          寫得不錯喲,加油  回復  更多評論   

          導航

          統計

          常用鏈接

          留言簿(4)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          相冊

          MyHome

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 莱西市| 阿拉尔市| 固安县| 辛集市| 巧家县| 民权县| 东港市| 永嘉县| 芦山县| 道真| 靖边县| 北京市| 和平区| 高雄县| 顺平县| 塘沽区| 南江县| 保靖县| 阿尔山市| 房山区| 东莞市| 光泽县| 伊宁市| 民县| 萝北县| 乐至县| 北川| 如皋市| 綦江县| 察哈| 襄汾县| 望城县| 昭通市| 泸西县| 广灵县| 容城县| 高阳县| 宁城县| 潞城市| 五寨县| 峨山|