Javafx TreeView项目操作事件 [英] Javafx Treeview item action event

查看:2024
本文介绍了Javafx TreeView项目操作事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用treeView创建一个菜单。这是我第一次使用treeView并在几个网站上阅读它。

I'm trying to create a menu using a treeView. This is the first time I'm using treeView and have been reading up on it on several websites.

当涉及到行动事件时,我遇到了一些问题。我想做的是基本上是为了触发和事件,当用户点击树视图中的一个节点到目前为止,我有以下:

I'm having some problems when it comes to action event. What I want to do is basically to fire and event when ever the user clicks a node in the treeview so far I have the following:

        TreeItem<String> rootItem = new TreeItem<String>("Navigation");
    TreeItem<String> statistics = new TreeItem<String>("Statistics");
    TreeItem<String> clan = new TreeItem<String>("Clan page");
    clan.addEventHandler(MouseEvent, new EventHandler<MouseEvent>() {

        @Override
        public void handle(MouseEvent event) {
            // TODO Auto-generated method stub

        }
    });

    rootItem.getChildren().add(statistics);
    rootItem.getChildren().add(clan);

    TreeView<String> tree = new TreeView<String>(rootItem); 

可惜这似乎不起作用。

有什么办法可以将 clicklistener 甚至一个 actionlistener 添加到我的 treeView 而不用更改 treeItems 键入 Button

Is there any way I can add a clicklistener or even an actionlistener to the individual items in my treeView without changing the treeItems to type Button ?

推荐答案

根据 JavaFX 2.2文档


..一个TreeItem是一个 Node ,因此没有视觉事件将
触发TreeItem,要获取这些事件,有必要添加相关观察者
TreeCell实例(通过一个自定义单元格工厂)。

" ..a TreeItem is not a Node, and therefore no visual events will be fired on the TreeItem, To get these events, it is necessary to add relevant observers to the TreeCell instances (via a custom cell factory)."

我认为这个 TreeView 的>示例将会以某种方式有用。

I think this example on using TreeView will be somehow useful.

这篇关于Javafx TreeView项目操作事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆