javax.swing.RowFilter类的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(14.7k)|赞(0)|评价(0)|浏览(138)

本文整理了Java中javax.swing.RowFilter类的一些代码示例,展示了RowFilter类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。RowFilter类的具体详情如下:
包路径:javax.swing.RowFilter
类名称:RowFilter

RowFilter介绍

暂无

代码示例

代码示例来源:origin: stackoverflow.com

  1. private JTable jTable = new JTable(model);
  2. = new TableRowSorter<>(jTable.getModel());
  3. jTable.setRowSorter(rowSorter);
  4. panel.add(new JLabel("Specify a word to match:"),
  5. BorderLayout.WEST);
  6. panel.add(jtfFilter, BorderLayout.CENTER);
  7. setLayout(new BorderLayout());
  8. add(panel, BorderLayout.SOUTH);
  9. add(new JScrollPane(jTable), BorderLayout.CENTER);
  10. rowSorter.setRowFilter(null);
  11. } else {
  12. rowSorter.setRowFilter(RowFilter.regexFilter("(?i)" + text));
  13. rowSorter.setRowFilter(null);
  14. } else {
  15. rowSorter.setRowFilter(RowFilter.regexFilter("(?i)" + text));

代码示例来源:origin: magefree/mage

  1. stateFilterList.add(RowFilter.regexFilter("Waiting", TablesTableModel.COLUMN_STATUS));
  2. stateFilterList.add(RowFilter.regexFilter("Dueling|Constructing|Drafting|Sideboard", TablesTableModel.COLUMN_STATUS));
  3. typeFilterList.add(RowFilter.regexFilter("Two|Commander|Free|Tiny|Momir", TablesTableModel.COLUMN_GAME_TYPE));
  4. typeFilterList.add(RowFilter.regexFilter("Constructed", TablesTableModel.COLUMN_GAME_TYPE));
  5. typeFilterList.add(RowFilter.regexFilter("Booster|Sealed", TablesTableModel.COLUMN_GAME_TYPE));
  6. formatFilterList.add(RowFilter.regexFilter("^Constructed.*Block", TablesTableModel.COLUMN_DECK_TYPE));
  7. formatFilterList.add(RowFilter.regexFilter("^Constructed - Standard", TablesTableModel.COLUMN_DECK_TYPE));
  8. formatFilterList.add(RowFilter.regexFilter("^Constructed - Modern", TablesTableModel.COLUMN_DECK_TYPE));
  9. formatFilterList.add(RowFilter.regexFilter("^Constructed - Legacy", TablesTableModel.COLUMN_DECK_TYPE));
  10. formatFilterList.add(RowFilter.regexFilter("^Constructed - Vintage", TablesTableModel.COLUMN_DECK_TYPE));
  11. formatFilterList.add(RowFilter.regexFilter("^Commander|^Duel Commander|^Penny Dreadful Commander|^Freeform Commander|^MTGO 1v1 Commander|^Duel Brawl|^Brawl", TablesTableModel.COLUMN_DECK_TYPE));
  12. formatFilterList.add(RowFilter.regexFilter("^Tiny", TablesTableModel.COLUMN_DECK_TYPE));
  13. formatFilterList.add(RowFilter.regexFilter("^Limited", TablesTableModel.COLUMN_DECK_TYPE));
  14. formatFilterList.add(RowFilter.regexFilter("^Momir Basic|^Constructed - Pauper|^Constructed - Frontier|^Constructed - Extended|^Constructed - Eternal|^Constructed - Historical|^Constructed - Super|^Constructed - Freeform|^Australian Highlander|^Canadian Highlander|^Constructed - Old", TablesTableModel.COLUMN_DECK_TYPE));
  15. skillFilterList.add(RowFilter.regexFilter(this.tableModel.getSkillLevelAsCode(SkillLevel.BEGINNER, true), TablesTableModel.COLUMN_SKILL));

代码示例来源:origin: stackoverflow.com

  1. filterCpText.setBackground(Color.LIGHT_GRAY);
  2. JPanel filterCpPanel = new JPanel();
  3. filterCpPanel.setLayout(new BorderLayout(5, 5));
  4. filterCpPanel.setBorder(BorderFactory.createEmptyBorder(1, 1, 1, 1));
  5. filterCpPanel.setBackground(Color.LIGHT_GRAY);
  6. filterCpPanel.setPreferredSize(new Dimension(300, 30));
  7. filterCpPanel.add(filterCpText, BorderLayout.CENTER);
  8. add(filterCpPanel, BorderLayout.NORTH);
  9. final JTable table = new JTable(new MyTableModel());
  10. table.setPreferredScrollableViewportSize(new Dimension(500, 160));
  11. table.setFillsViewportHeight(true);
  12. JScrollPane scrollPane = new JScrollPane(table);
  13. add(scrollPane, BorderLayout.CENTER);
  14. TableModel myTableModel = table.getModel();
  15. final TableRowSorter<TableModel> sorter = new TableRowSorter<TableModel>(myTableModel);
  16. table.setRowSorter(sorter);
  17. filterCpText.getDocument().addDocumentListener(new DocumentListener() {
  18. String text = filterCpText.getText();
  19. if (text.length() == 0) {
  20. sorter.setRowFilter(null);
  21. table.clearSelection();
  22. } else {
  23. try {
  24. sorter.setRowFilter(RowFilter.regexFilter("(?i)" + text, 4));
  25. table.clearSelection();
  26. } catch (PatternSyntaxException pse) {

代码示例来源:origin: stackoverflow.com

  1. initTableModel();
  2. rowSorter = new TableRowSorter<DefaultTableModel>(searchTableModel);
  3. searchTable = new JTable(searchTableModel);
  4. searchTable.setRowSorter(rowSorter);
  5. searchTable.setFillsViewportHeight(true);
  6. searchTable.getColumnModel().setColumnSelectionAllowed(false);
  7. searchTable.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
  8. popup.add(searchTable);
  9. popup.setVisible(false);
  10. popup.setBorder(BorderFactory.createEmptyBorder());
  11. searchPanel.add(searchField, BorderLayout.CENTER);
  12. frame.add(searchPanel, BorderLayout.NORTH);
  13. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  14. frame.setSize(800, 500);
  15. rf = RowFilter.regexFilter(getFilterText(), 0);
  16. rowSorter.setRowFilter(rf);

代码示例来源:origin: stackoverflow.com

  1. setLayout(new BorderLayout());
  2. sorter = new TableRowSorter<MyTableModel>(model);
  3. table = new JTable(model) {
  4. public String getToolTipText(MouseEvent e) {
  5. Point p = e.getPoint();
  6. int row = convertRowIndexToModel(rowAtPoint(p));
  7. MyTableModel model = (MyTableModel) table.getModel();
  8. return model.getPath(row);
  9. table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
  10. add(
  11. new JScrollPane(table), BorderLayout.CENTER);
  12. add(filterText, BorderLayout.SOUTH);
  13. rf = RowFilter.regexFilter("(?i)" + filterText.getText());
  14. } catch (java.util.regex.PatternSyntaxException e) {
  15. return;
  16. sorter.setRowFilter(rf);

代码示例来源:origin: stackoverflow.com

  1. try {
  2. filterText = document.getText(0, document.getLength()).trim();
  3. rowFilter = RowFilter.regexFilter("(?i)" + filterText);
  4. } catch (java.util.regex.PatternSyntaxException e) {
  5. return;
  6. return;
  7. rowSorter.setRowFilter(rowFilter);
  8. table.setRowSorter(rowSorter);
  9. popupWindow.getContentPane().add(getWindowComponent());
  10. popupWindow.setLocation(new Point(SearchBox.this.getLocationOnScreen().x, SearchBox.this.getLocationOnScreen().y + 25));
  11. popupWindow.setUndecorated(true);
  12. add(editor);
  13. add(arrowButton);
  14. setBackground(editor.getBackground());
  15. setBorder(editor.getBorder());
  16. rowSorter = new TableRowSorter<DefaultTableModel>(tableModel);
  17. table = new JTable(tableModel);
  18. table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
  19. table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
  20. table.setAutoCreateRowSorter(true);

代码示例来源:origin: stackoverflow.com

  1. table = new JTable(model);
  2. table.setRowHeight(pHeight);
  3. table.setPreferredScrollableViewportSize(table.getPreferredSize());
  4. final TableRowSorter<TableModel> sorter = new TableRowSorter<TableModel>(model);
  5. table.setRowSorter(sorter);
  6. filterText.setMaximumSize(new Dimension(400, 30));
  7. String text = filterText.getText();
  8. if (text.length() == 0) {
  9. sorter.setRowFilter(null);
  10. table.clearSelection();
  11. } else {
  12. try {
  13. sorter.setRowFilter(RowFilter.regexFilter("(?i)" + text));
  14. } catch (PatternSyntaxException pse) {
  15. JOptionPane.showMessageDialog(null, "Bad regex pattern", "Bad regex pattern", JOptionPane.ERROR_MESSAGE);
  16. add(filterText, BorderLayout.NORTH);
  17. JScrollPane scrollPane = new JScrollPane(table);
  18. add(scrollPane, BorderLayout.CENTER);
  19. myLabel.setPreferredSize(new Dimension(200, pHeight));
  20. myLabel.setHorizontalAlignment(SwingConstants.CENTER);
  21. add(myLabel, BorderLayout.SOUTH);
  22. new Thread(this).start();

代码示例来源:origin: stackoverflow.com

  1. JTable table = new JTable(tableData, header);
  2. if (listLike) {
  3. Dimension d = table.getPreferredScrollableViewportSize();
  4. table.setPreferredScrollableViewportSize(new Dimension(d.width/2,d.height));
  5. table.setShowGrid(false);
  6. table.setTableHeader(null);
  7. table.setFillsViewportHeight(true);
  8. ui.add(new JScrollPane(table));
  9. sorter = new TableRowSorter(table.getModel());
  10. table.setRowSorter(sorter);
  11. ui.add(filterText, BorderLayout.PAGE_START);
  12. Document doc = filterText.getDocument();
  13. DocumentListener listener = new DocumentListener() {
  14. rf = RowFilter.regexFilter(filterText.getText(), 0);
  15. } catch (java.util.regex.PatternSyntaxException e) {
  16. return;
  17. sorter.setRowFilter(rf);
  18. f.setLocationByPlatform(true);
  19. f.add(o1.getUI(), BorderLayout.LINE_START);
  20. f.add(o2.getUI(), BorderLayout.CENTER);
  21. f.pack();

代码示例来源:origin: stackoverflow.com

  1. frame.add(new TestPane());
  2. frame.pack();
  3. frame.setLocationRelativeTo(null);
  4. setLayout(new BorderLayout());
  5. JTable table = new JTable(model);
  6. table.setAutoCreateRowSorter(true);
  7. TableUtilities.installFilterSupport(table,
  8. new TableUtilities.IFilterListener() {
  9. @Override
  10. public void filterChanged(JTable table, String filter) {
  11. TableRowSorter sorter = (TableRowSorter) table.getRowSorter();
  12. if (filter == null || filter.trim().length() == 0) {
  13. filter = "*";
  14. sorter.setRowFilter(RowFilter.regexFilter(filter));
  15. add(new JScrollPane(table));

代码示例来源:origin: stackoverflow.com

  1. private final JTable table = new JTable(model);
  2. private final TableRowSorter<TableModel> rowSorter = new TableRowSorter<>(model);
  3. private final JTextField searchFilter = new JTextField();
  4. private final JButton open = new JButton("open");
  5. table.setRowSorter(rowSorter);
  6. open.addActionListener(new OpenData());//end OpenData class
  7. panel.add(new JLabel("Search:"), BorderLayout.WEST);
  8. panel.add(searchFilter, BorderLayout.CENTER);
  9. panel.add(open, BorderLayout.EAST);
  10. System.out.println(text);
  11. if (text.trim().length() == 0) {
  12. rowSorter.setRowFilter(null);
  13. } else {
  14. rowSorter.setRowFilter(RowFilter.regexFilter("(?i)" + text));
  15. String text = searchFilter.getText();
  16. if (text.trim().length() == 0) {
  17. rowSorter.setRowFilter(null);
  18. } else {
  19. rowSorter.setRowFilter(RowFilter.regexFilter("(?i)" + text));
  20. m.addRow(dataArray);
  21. table.setModel(m);
  22. rowSorter.setModel(m);

代码示例来源:origin: stackoverflow.com

  1. private JTable table = new JTable(model);
  2. table.setPreferredScrollableViewportSize(table.getPreferredSize());
  3. sorter = new TableRowSorter<TableModel>(model);
  4. table.setRowSorter(sorter);
  5. Date d1 = (Date) model.getValueAt(0, 3);
  6. Date d2 = (Date) model.getValueAt(model.getRowCount() - 2, 3);
  7. RowFilter<TableModel, Integer> low = RowFilter.dateFilter(RowFilter.ComparisonType.AFTER, d1, 3);
  8. RowFilter<TableModel, Integer> high = RowFilter.dateFilter(RowFilter.ComparisonType.BEFORE, d2, 3);
  9. List<RowFilter<TableModel, Integer>> filters = Arrays.asList(low, high);
  10. final RowFilter<TableModel, Integer> filter = RowFilter.andFilter(filters);
  11. JScrollPane scrollPane = new JScrollPane(table);
  12. JFrame frame = new JFrame("Filtering Table");
  13. frame.add(new JButton(new AbstractAction("Toggle filter") {
  14. @Override
  15. public void actionPerformed(ActionEvent e) {
  16. if (sorter.getRowFilter() != null) {
  17. sorter.setRowFilter(null);
  18. } else {
  19. sorter.setRowFilter(filter);
  20. frame.add(scrollPane);
  21. frame.pack();
  22. frame.setLocationByPlatform(true);

代码示例来源:origin: net.sourceforge.javydreamercsw/Client-UI

  1. if (getHeaderCheckbox().isSelected()) {
  2. TableRowSorter sorter
  3. = new TableRowSorter<>(tableModel);
  4. getImportTable().setRowSorter(sorter);
  5. RowFilter<DefaultTableModel, Object> rf;
  6. = RowFilter.regexFilter(MessageFormat.format("^{0}",
  7. tableModel.getValueAt(1, 0)));
  8. rf = RowFilter.notFilter(regexFilter);
  9. sorter.setRowFilter(rf);

代码示例来源:origin: ron190/jsql-injection

  1. @Override
  2. public void insertUpdate(DocumentEvent e) {
  3. String text = textFilter.getText();
  4. if (text.trim().length() == 0) {
  5. rowSorter.setRowFilter(null);
  6. } else {
  7. rowSorter.setRowFilter(RowFilter.regexFilter("(?i)" + Pattern.quote(text)));
  8. }
  9. }

代码示例来源:origin: com.numdata/numdata-swing

  1. final Cursor topLevelCursor = ( topLevelAncestor == null ) ? null : topLevelAncestor.getCursor();
  2. final Cursor fieldCursor = field.getCursor();
  3. final Cursor waitCursor = Cursor.getPredefinedCursor( Cursor.WAIT_CURSOR );
  4. topLevelAncestor.setCursor( waitCursor );
  5. if ( TextTools.isEmpty( text ) )
  6. sorter.setRowFilter( originalRowFilter );
  7. filters.add( RowFilter.regexFilter( "(?i)" + Pattern.quote( word ) ) );
  8. sorter.setRowFilter( RowFilter.andFilter( filters ) );
  9. topLevelAncestor.setCursor( topLevelCursor );

代码示例来源:origin: igniterealtime/Spark

  1. @Override
  2. public void keyReleased(KeyEvent e) {
  3. JTextField textField = (JTextField)e.getSource();
  4. String text = textField.getText();
  5. List<RowFilter<Object,Object>> filters = new ArrayList<>();
  6. filters.add(RowFilter.regexFilter(text, 1));
  7. filters.add(RowFilter.regexFilter(text, 2));
  8. filters.add(RowFilter.regexFilter(text, 3));
  9. RowFilter<Object,Object> af = RowFilter.orFilter(filters);
  10. sorter.setRowFilter(af);
  11. }
  12. });

代码示例来源:origin: MegaMek/megamek

  1. private void filter() {
  2. List<RowFilter<UnitTableModel,Integer>> filters = new ArrayList<>();
  3. for (int i = 0; i < allConstraints.size(); i++) {
  4. if (otherCriteriaChecks.get(i).isSelected()) {
  5. filters.add(new UnitTableRowFilter(allConstraints.get(i)));
  6. }
  7. }
  8. if (otherCriteriaChecks.size() > allConstraints.size()
  9. && otherCriteriaChecks.get(otherCriteriaChecks.size() - 1).isSelected()) {
  10. filters.add(new UnitTableRowFilter(formationType.getGroupingCriteria()));
  11. }
  12. tableSorter.setRowFilter(RowFilter.andFilter(filters));
  13. }

代码示例来源:origin: stackoverflow.com

  1. /*
  2. * To change this template, choose Tools | Templates
  3. * and open the template in the editor.
  4. */
  5. package javax.swing;
  6. import java.text.Normalizer;
  7. /**
  8. *
  9. * @author Miroslav
  10. */
  11. public abstract class RowFilterSpecialFilter {
  12. public static <M, I> RowFilter<M, I> regexFilterAccentIndiferent(String regex) {
  13. return RowFilter.regexFilter("(?i)" + Normalizer.normalize(regex, Normalizer.Form.NFD).replaceAll("\\p{InCombiningDiacriticalMarks}+", ""));
  14. }
  15. public static <M, I> RowFilter<M, I> regexFilterAccentIndiferent(String regex, int... indices) {
  16. return RowFilter.regexFilter("(?i)" + Normalizer.normalize(regex, Normalizer.Form.NFD).replaceAll("\\p{InCombiningDiacriticalMarks}+", ""), indices);
  17. }
  18. }

代码示例来源:origin: otros-systems/otroslogviewer

  1. private RowFilter<VfsTableModel, Integer> createFilter() {
  2. RowFilter<VfsTableModel, Integer> regexFilter = new VfsTableModelFileNameRowFilter(filterField);
  3. RowFilter<VfsTableModel, Integer> hiddenFilter = new VfsTableModelHiddenFileRowFilter(showHidden);
  4. RowFilter<VfsTableModel, Integer> alwaysShowParent = new VfsTableModelShowParentRowFilter();
  5. @SuppressWarnings("unchecked") RowFilter<VfsTableModel, Integer> filters = RowFilter.andFilter(Arrays.asList(regexFilter, hiddenFilter));
  6. filters = RowFilter.orFilter(Arrays.asList(filters, alwaysShowParent));
  7. return filters;
  8. }

代码示例来源:origin: eugener/oxbow

  1. @Override
  2. public boolean include( final RowFilter.Entry<? extends Object, ? extends Object> entry) {
  3. // use parent filter condition
  4. if ( parentFilter != null && !parentFilter.include(entry)) return false;
  5. return includeRow( new ITableFilter.Row() {
  6. @Override
  7. public Object getValue(int column) { return entry.getValue(column); }
  8. @Override
  9. public int getValueCount() { return entry.getValueCount(); }
  10. });
  11. }

代码示例来源:origin: io.ultreia.java4all.i18n/i18n-editor

  1. public void updateListFromUserFilter(String text) {
  2. RowFilter<ListModel, Integer> rowFilter = new RowFilter<ListModel, Integer>() {
  3. @Override
  4. public boolean include(Entry<? extends ListModel, ? extends Integer> entry) {
  5. if (text == null) {
  6. return true;
  7. }
  8. for (int i = entry.getValueCount() - 1; i >= 0; i--) {
  9. String itemKey = entry.getStringValue(i);
  10. Item item = get(itemKey);
  11. boolean match = itemKey.contains(text) || item.getItems().stream().anyMatch(e -> e.getLastValidValue().contains(text));
  12. if (match) {
  13. return true;
  14. }
  15. }
  16. return false;
  17. }
  18. };
  19. if (filter == null) {
  20. list.setRowFilter(rowFilter);
  21. } else {
  22. list.setRowFilter(RowFilter.andFilter(ImmutableList.of(filter, rowFilter)));
  23. }
  24. updateTabTitle();
  25. refreshActions();
  26. }

相关文章