2017-07-26 88 views
0

我還是Java新手;我創建了一個搜索或過濾文本字段,以在Jtable中查找我的數據庫,但此代碼僅搜索小寫字母。我怎樣才能使這種編碼,可以過濾大小寫?在jtable netbeans中過濾和搜索

這是我的代碼:

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)); } 

回答

0

通過從字符串

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

對於進一步的修改遵循給定鏈路

https://coderanch.com/t/498043/java/JTable-rowFilter-case-insensitive除去toLowerCase()方法嘗試給定的模式

+0

小姐,你可以嘗試修改我的編碼,我不知道怎麼改 – sya

0

要麼你通過這個

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)); 
} 

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)); 
    } 

改變你的最後一行或試試這個

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)); 
} 
+0

非常感謝。你救了我。 – sya