我的函数无法在JavaFx中调用

时间:2016-08-22 06:07:57

标签: java listview user-interface javafx scenebuilder

我在FXML中创建了一个列表视图,其id为“lwAllUserGrp”我可以使用该id和以下函数来填充它:

Promise<T> p = new Promise<T>();
p.resolve(value);
return p.getFuture();

但是当我添加以下函数以查看选择了哪一行时:

public void populateAllUserList() {
        lwAllUserGrp.getItems().clear();
        ///////////////////////////////////////////////
        String filter = txtSearch.getText();
        String Query = "Select user_name, user_login_name, user_state from dm_user where r_is_group = 0 and user_state = 0  and (user_name not like 'dm%' and user_name not like 'svc%' and user_name not like 'lexo%' ) order by user_name";
        ArrayList<String> AllUser = GetDataWithDql(_session, Query, "user_name");
        for (String x : AllUser) {
            if (x.toLowerCase().contains(filter.toLowerCase())){

                lwAllUserGrp.getItems().add(x);

            }

        }
    }

我的功能根本没有被调用?谁知道原因?

1 个答案:

答案 0 :(得分:0)

如果你没有调用该函数,它就不会自己调用:)你必须将它添加为监听器或其他任何东西。在你的情况下,你错过了你的FXML中的听众任务(我有一种预感,这就是我问的原因)。正如您在评论中发现的那样,在FXML中添加适当的onMouseClicked说明符应该处理它。