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

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 建瓯市| 青岛市| 广宗县| 资源县| 南汇区| 图片| 滁州市| 新丰县| 璧山县| 乌兰察布市| 黄陵县| 葵青区| 军事| 太仆寺旗| 南京市| 鄱阳县| 五河县| 襄垣县| 屏东县| 田阳县| 东莞市| 博湖县| 连州市| 灌云县| 阿克陶县| 达孜县| 苗栗市| 砚山县| 新沂市| 资兴市| 绥化市| 崇阳县| 房产| 五寨县| 泉州市| 琼海市| 合川市| 疏附县| 达日县| 五寨县| 彩票|