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  回復  更多評論   

          主站蜘蛛池模板: 苏尼特左旗| 阜阳市| 宣汉县| 天水市| 巴彦淖尔市| 本溪市| 剑阁县| 麻栗坡县| 抚松县| 兴业县| 深圳市| 沐川县| 罗定市| 蕉岭县| 永定县| 莲花县| 黄浦区| 洪江市| 石台县| 遂平县| 牡丹江市| 连南| 沙坪坝区| 罗山县| 手游| 昌宁县| 仙居县| 鄂尔多斯市| 安福县| 达日县| 兰溪市| 斗六市| 平和县| 德阳市| 丰镇市| 武城县| 成都市| 阿鲁科尔沁旗| 舟曲县| 滦平县| 沁水县|