DANCE WITH JAVA

          開發出高質量的系統

          常用鏈接

          統計

          積分與排名

          好友之家

          最新評論

          Swt/Jface tableviewer入門教程四(加入filter ,改變行的顏色)

          如果我們想根據某一列來過濾記錄,如何實現呢?很簡單,定義一個過濾器filter。這里只演示定義一個過濾器的情況。
          現實中你可以定義多個靈活的過濾器,通過替換過濾器來實現各種各樣的過濾。
          一、過濾器代碼:

          import org.eclipse.jface.viewers.Viewer;
          import org.eclipse.jface.viewers.ViewerFilter;

          public class MyFilter extends ViewerFilter {
              
          public boolean select(Viewer viewer, Object parentElement, Object element) {
                  People p 
          = (People) element;
                  
          return p.getName().startsWith("張1");
              }

          }
          然后在testTableViewer的shell.open前加入這個過濾器
          tableViewer.addFilter(new MyFilter());
          好了,看一下效果
          二、如果我們想凸顯某一條記錄,想改變一下它的顏色,如果實現呢,簡單,只要幾句話就可以了。
          Color color = Display.getDefault().getSystemColor(SWT.COLOR_RED);
          table.getItems()[table.getItemCount()
          -1].setBackground(color);
          table.redraw();

          三、這里提一下,使用tabeViewer.setUseHashlookup(true)可以在tableviewer內部為數據記錄和tableItem之間的映射創建一個hash表,這樣可以加快tableItem的和記錄間的查找速度,注意,這條語句必須在setInput之前加入才有效。
          好了,到此tableviewer的基本的東西介紹的差不多了
          source下載:http://www.aygfsteel.com/Files/dreamstone/jface-4.rar
          四:在現實的開發中,我們更多的是喜歡把一些簡單的類用匿名類或者內部類的方式來實現。像之前例子中每個都單獨一個類的情況并不多。
          下邊是和前邊的source效果等同的source,不過是使用了匿名類和內部類。
          http://www.aygfsteel.com/Files/dreamstone/jface-5.rar

          posted on 2007-08-05 13:33 dreamstone 閱讀(5788) 評論(3)  編輯  收藏 所屬分類: SWT和插件開發

          評論

          # re: Swt/Jface tableviewer入門教程四(加入filter ,改變行的顏色) 2008-11-01 13:49 xL

          代碼很強大!  回復  更多評論   

          # re: Swt/Jface tableviewer入門教程四(加入filter ,改變行的顏色) 2012-05-02 11:40 LFZ

          謝謝!辛苦了  回復  更多評論   

          # re: Swt/Jface tableviewer入門教程四(加入filter ,改變行的顏色) 2015-01-22 19:01 suren

          學習過了

          surenpi.com  回復  更多評論   

          主站蜘蛛池模板: 安福县| 吉木乃县| 白河县| 上虞市| 明光市| 阿合奇县| 米易县| 侯马市| 神农架林区| 中方县| 迁安市| 宁武县| 芜湖县| 铜鼓县| 象山县| 百色市| 株洲市| 红安县| 政和县| 明水县| 大悟县| 西城区| 隆化县| 大理市| 田林县| 嘉善县| 迭部县| 蓝田县| 柞水县| 林甸县| 高雄县| 长寿区| 三河市| 平舆县| 贡嘎县| 迁安市| 黔西| 普兰店市| 高唐县| 阳山县| 会理县|