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

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

          常用鏈接

          留言簿(68)

          隨筆分類(136)

          隨筆檔案(122)

          最新隨筆

          搜索

          •  

          積分與排名

          • 積分 - 526734
          • 排名 - 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 交口稱贊
          呵呵
          大家好才是真的好  回復  更多評論
            
          主站蜘蛛池模板: 资兴市| 颍上县| 平罗县| 淮安市| 新和县| 阳东县| 民乐县| 大足县| 昌黎县| 长垣县| 静海县| 兴隆县| 永春县| 益阳市| 东至县| 东辽县| 平泉县| 遵义县| 沅陵县| 庆安县| 错那县| 西林县| 太湖县| 柳林县| 北碚区| 通化县| 扶绥县| 河津市| 汉寿县| 乌鲁木齐市| 板桥市| 永顺县| 青铜峡市| 瑞安市| 安乡县| 灌阳县| 乌恰县| 甘孜| 东光县| 昌图县| 嘉荫县|