简体   繁体   English

在jtable netbeans中过滤和搜索

[英]Filter and search in jtable netbeans

I still new in Java; 我还是Java新手。 I create one search or filter textfield to find my database in Jtable but this code only search a lowercase. 我创建一个搜索或过滤器文本字段以在Jtable中找到我的数据库,但是此代码仅搜索小写字母。 How can I make this coding that can filter the lower and upper case? 我该如何进行编码以过滤大小写?

Here is my code: 这是我的代码:

private void jTextField1KeyReleased(java.awt.event.KeyEvent evt) {   
   DefaultTableModel table = (DefaultTableModel)JTable_MosqueManagementSystem.getModel();
      String search = jTextField1.getText().toLowerCase();
    TableRowSorter<DefaultTableModel> tr = new TableRowSorter<DefaultTableModel>(table);
    JTable_MosqueManagementSystem.setRowSorter(tr);
    tr.setRowFilter(RowFilter.regexFilter(search)); }

Try the given pattern by removing toLowerCase() method from the string 通过从字符串中删除toLowerCase()方法来尝试给定模式

RowFilter<TableModel, Object> filter =    RowFilter.regexFilter(Pattern.compile(lookup,Pattern.CASE_INSENSITIVE).toString(),0,1);

For further modifications follow the given link 如需进一步修改,请点击给定的链接

https://coderanch.com/t/498043/java/JTable-rowFilter-case-insensitive https://coderanch.com/t/498043/java/JTable-rowFilter-case-insensitive

Either you change your last line by this 您可以通过此更改最后一行

private void jTextField1KeyReleased(java.awt.event.KeyEvent evt) {   
   DefaultTableModel table = (DefaultTableModel)JTable_MosqueManagementSystem.getModel();
      String search = jTextField1.getText();
    TableRowSorter<DefaultTableModel> tr = new      TableRowSorter<DefaultTableModel>(table);
    JTable_MosqueManagementSystem.setRowSorter(tr);
    sorter.setRowFilter(RowFilter.regexFilter("(?i)" + "Alt",search));
 }

or 要么

private void jTextField1KeyReleased(java.awt.event.KeyEvent evt) {   
           DefaultTableModel table = (DefaultTableModel)JTable_MosqueManagementSystem.getModel();
              String search = jTextField1.getText();
            TableRowSorter<DefaultTableModel> tr = new      TableRowSorter<DefaultTableModel>(table);
            JTable_MosqueManagementSystem.setRowSorter(tr);
        tr.setRowFilter(RowFilter.regexFilter("alt",Pattern.CASE_INSENSITIVE,search));
     }

or try this 或尝试这个

private void jTextField1KeyReleased(java.awt.event.KeyEvent evt) {   
   DefaultTableModel table = (DefaultTableModel)JTable_MosqueManagementSystem.getModel();
      String search = jTextField1.getText();
    TableRowSorter<DefaultTableModel> tr = new      TableRowSorter<DefaultTableModel>(table);
    JTable_MosqueManagementSystem.setRowSorter(tr);
Pattern pattern = Pattern.compile("alt", Pattern.CASE_INSENSITIVE);
        tr.setRowFilter(RowFilter.regexFilter(pattern,search));
 }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM