隨筆 - 119  文章 - 3173  trackbacks - 0
          <2007年5月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          交友莫獨酒,茅臺西鳳游。
          口干古井貢,心徜洋河流。
          稱多情杜康,趟無量雙溝。
          贊中華巍巍,無此不銷愁。

          常用鏈接

          留言簿(68)

          隨筆分類(136)

          隨筆檔案(122)

          最新隨筆

          搜索

          •  

          積分與排名

          • 積分 - 526780
          • 排名 - 92

          最新評論

          下面演示怎么動態過濾表格顯示的內容
          ?1?import?javax.swing.*;
          ?2?import?javax.swing.table.*;
          ?3?import?java.awt.*;
          ?4?import?java.awt.event.*;
          ?5?import?java.util.regex.*;
          ?6?
          ?7?public?class?FilterTable?{
          ?8?????public?static?void?main(String?args[])?{
          ?9?????????Runnable?runner?=?new?Runnable()?{
          10?????????????public?void?run()?{
          11?????????????????JFrame?frame?=?new?JFrame("Sorting?JTable");
          12?????????????????frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
          13?????????????????Object?rows[][]?=?{?
          14?????????????????????????{?"Abc",?"",?1d?},?
          15?????????????????????????{?"AAB",?"",?2d?},
          16?????????????????????????{?"ABC",?"このページを印刷",?3.14?},?
          17?????????????????????????{?"BBB",?"hermit",?3.14?},
          18?????????????????????????{?"BBC",?"0",?1.3?},?
          19?????????????????????????{?"AAA",?"!!!",?93.02?}?
          20?????????????????????????};
          21?????????????????String?columns[]?=?{?"英文測試",?"多語言測試",?"數字測試"?};
          22?????????????????TableModel?model?=?new?DefaultTableModel(rows,?columns)?{
          23?????????????????????public?Class?getColumnClass(int?column)?{
          24?????????????????????????Class?returnValue;
          25?????????????????????????if?((column?>=?0)?&&?(column?<?getColumnCount()))?{
          26?????????????????????????????returnValue?=?getValueAt(0,?column).getClass();
          27?????????????????????????}?else?{
          28?????????????????????????????returnValue?=?Object.class;
          29?????????????????????????}
          30?????????????????????????return?returnValue;
          31?????????????????????}
          32?????????????????};
          33?????????????????JTable?table?=?new?JTable(model);
          34?????????????????final?TableRowSorter<TableModel>?sorter?=?new?TableRowSorter<TableModel>(
          35?????????????????????????model);
          36?????????????????table.setRowSorter(sorter);
          37?????????????????JScrollPane?pane?=?new?JScrollPane(table);
          38?????????????????frame.add(pane,?BorderLayout.CENTER);
          39?????????????????JPanel?panel?=?new?JPanel(new?BorderLayout());
          40?????????????????JLabel?label?=?new?JLabel("Filter");
          41?????????????????panel.add(label,?BorderLayout.WEST);
          42?????????????????final?JTextField?filterText?=?new?JTextField();
          43?????????????????filterText.addKeyListener(new?KeyAdapter()?{
          44?????????????????????public?void?keyReleased(KeyEvent?e)?{
          45?????????????????????????String?text?=?filterText.getText();
          46?????????????????????????if?(text.length()?==?0)?{
          47?????????????????????????????sorter.setRowFilter(null);
          48?????????????????????????}?else?{
          49?????????????????????????????try?{
          50?????????????????????????????????sorter.setRowFilter(RowFilter
          51?????????????????????????????????????????????????.regexFilter(text));
          52?????????????????????????????}?catch?(PatternSyntaxException?pse)?{
          53?????????????????????????????????System.err.println("Bad?regex?pattern");
          54?????????????????????????????}
          55?????????????????????????}
          56?????????????????????}
          57?????????????????});
          58?
          59?????????????????panel.add(filterText,?BorderLayout.CENTER);
          60?????????????????frame.add(panel,?BorderLayout.NORTH);
          61?
          62?????????????????frame.setSize(300,?250);
          63?????????????????frame.setVisible(true);
          64?????????????}
          65?????????};
          66?????????EventQueue.invokeLater(runner);
          67?????}
          68?}
          69?

          效果不錯吧,不過我還是喜歡swt多一點
          sort2.jpg


          sort.jpg
          posted on 2007-05-14 11:09 交口稱贊 閱讀(1320) 評論(3)  編輯  收藏 所屬分類: Java6

          FeedBack:
          # re: 學習Java6(九)Table(2)過濾表格[未登錄] 2007-05-15 09:19 wzjin
          挺好的!謝謝!  回復  更多評論
            
          # re: 學習Java6(九)Table(2)過濾表格 2007-05-30 09:18 子敬
          很好很好啊  回復  更多評論
            
          # re: 學習Java6(九)Table(2)過濾表格 2007-05-30 12:25 交口稱贊
          呵呵
          大家好才是真的好  回復  更多評論
            
          主站蜘蛛池模板: 平远县| 平安县| 宜章县| 霍林郭勒市| 齐河县| 东源县| 龙游县| 蓝田县| 西乌珠穆沁旗| 镇江市| 蒙山县| 北川| 姜堰市| 新余市| 双鸭山市| 金寨县| 青岛市| 抚顺县| 曲阳县| 边坝县| 醴陵市| 丰镇市| 渭源县| 泰和县| 阿鲁科尔沁旗| 定州市| 景宁| 海丰县| 汉中市| 新泰市| 工布江达县| 泗水县| 民丰县| 德安县| 剑川县| 油尖旺区| 扎鲁特旗| 福州市| 杭锦后旗| 富裕县| 绥化市|