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 田亮 閱讀(1287) 評論(1)  編輯  收藏 所屬分類: GWT

          評論

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

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

          導航

          統計

          常用鏈接

          留言簿(4)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          相冊

          MyHome

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 广元市| 林西县| 泾川县| 石嘴山市| 平果县| 平遥县| 大丰市| 盐边县| 余庆县| 静宁县| 称多县| 镇巴县| 蒙自县| 洪江市| 肥西县| 奎屯市| 巴南区| 阿拉善盟| 达拉特旗| 稻城县| 渑池县| 舟曲县| 武夷山市| 和政县| 东明县| 岐山县| 诏安县| 柳州市| 交口县| 卢湾区| 瑞金市| 临桂县| 岳阳县| 专栏| 都昌县| 金堂县| 广德县| 开封市| 平定县| 塘沽区| 弥勒县|