PersonsController.java 文件源码

java
阅读 20 收藏 0 点赞 0 评论 0

项目:examples-javafx-repos1 作者:
protected void doFilterTable(TextField tf) {
    String criteria = tf.getText();

    if( logger.isLoggable(Level.FINE) ) {
        logger.fine( "[FILTER] filtering on=" + criteria );
    }

    if( criteria == null || criteria.isEmpty() ) {
        tblPersons.setItems( personsActiveRecord );
        return;
    }

    FilteredList<Person> fl = new FilteredList<>(personsActiveRecord, p -> true);

    fl.setPredicate(person -> {

        if (criteria == null || criteria.isEmpty()) {
             return true;
         }

         String lcCriteria = criteria.toLowerCase();

         if (person.getFirstName().toLowerCase().contains(lcCriteria)) {
             return true; // Filter matches first name.
         } else if (person.getLastName().toLowerCase().contains(lcCriteria)) {
             return true; // Filter matches last name.
         } else if (person.getEmail().toLowerCase().contains(lcCriteria)) {
             return true;  //   matches email
         }

         return false; // Does not match.
     });

     SortedList<Person> sortedData = new SortedList<>(fl);
     sortedData.comparatorProperty().bind(tblPersons.comparatorProperty());  // ?       
     tblPersons.setItems(sortedData);
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号