gpt4 book ai didi

java - 需要触发JavaFX TableView内置的Table Menu Button

转载 作者:行者123 更新时间:2023-11-29 04:12:16 26 4
gpt4 key购买 nike

我有一个应用程序,其中 TableView 将根据数据库查询动态创建。这意味着我的应用程序将包含多个包含不同列的表。

我必须显示一个单独的按钮来显示/隐藏列。我熟悉用 table.setTableMenuButtonVisible() 触发的表格菜单按钮。不幸的是,我无法在 UI 上使用实际的屏幕内置按钮,尽管我想使用它的功能。

JavaFX TableView showing menu button

我实际上是在寻找一个 table.getTableMenu().show()有点叫。但我找不到这是任何类型的内置方法。有没有一种方法可以从我自己设计的 UI 按钮调用此按钮的操作?

最佳答案

实际上,我的评论是错误的:可以在不进行反射的情况下查找角区域并触发其 mousePressedHandler。

下面的代码片段打开角落菜单就像它被直接点击一样(至少在 fx11 中,并且仍然依赖于打开是由 mousePressed 事件触发的实现细节):

Button showCorner = new Button("open menu button");
showCorner.addEventHandler(MouseEvent.MOUSE_PRESSED, e -> {
Node corner = table.lookup(".show-hide-columns-button");
corner.fireEvent(e);
});

关于java - 需要触发JavaFX TableView内置的Table Menu Button,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54445095/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com