在JavaFX8中处理选定的TreeView项

时间:2017-10-02 15:19:48

标签: javafx event-handling treeview

如果是愚蠢的问题,嗨,大家好。我是JavaFX开发的新手。

方案 我正在使用JavaFX8的TreeView组件为应用程序构建菜单

问题描述 问题是,当再次选择所选项时,不会触发处理程序。即:如果我选择CHILD 1.1,则会触发doSomething()。但如果再次选择它而不选择其他TreeItem,则之前不会触发doSomething()。代码如下所示:

    TreeItem<String> root = new TreeItem<>("ROOT");
    root.setExpanded(true);

    TreeItem<String> child1 = new TreeItem<>("CHILD 1");
    child1.setExpanded(true);
    TreeItem<String> child2 = new TreeItem<>("CHILD 2");        
    TreeItem<String> child11 = new TreeItem<>("CHILD 1.1");

    tvMenu.getSelectionModel().selectedItemProperty().addListener((v, oldValue, newValue) -> { 
    String selectedItem =v.getValue().getValue();        
    if (selectedItem.equals("CHILD 1.1")){          
        doSomething();          
    }

我该如何处理这个问题?

提前谢谢。

编辑03/10/2017

感谢 @James_D ,问题在这里解决了:

How do I make a mouse click event be acknowledged by a TreeItem in a TreeView?

0 个答案:

没有答案