例如,我想为Acc部门创建“Add Employee”,为IT支持创建“Add Supporter”。
需要根据treeitem的名称显示上下文菜单。
public TreeModel() {
MenuItem addMenuItem = new MenuItem("Create Tab");
addMenu.getItems().add(addMenuItem);
addMenuItem.setOnAction(new EventHandler() {
@Override
public void handle(Event t) {
TreeItem newEmployee =
new TreeItem<>("New Tab");
getTreeItem().getChildren().add(newEmployee);
}
});
contextMenuProperty().bind(
Bindings.when(Bindings.equal(itemProperty(),"TABS"))
.then(addMenu)
.otherwise((ContextMenu)null));
}
这管用。@James非常感谢你的优秀文章:)
我想在tableview中添加一个上下文菜单,更具体地说,我想在右键单击时在表行上显示上下文菜单。 我试着用这个代码 上面的代码在JavaFX2.0中工作正常,右键单击时我得到了一个上下文菜单,当我用JavaFX2.1上下文菜单运行我的代码时,它是如何工作的。 我尝试使用showingProperty()方法获取上下文菜单的显示属性,它在JavaFX2.1中返回false,在JavaFX2.0中返
我对上下文菜单有问题。在本主题之后,我发现在尝试加载上下文菜单insight JavaFX任务时有一个限制。我测试了实现platform.runlater(),但没有成功。 其他可能的解决方案是:
我有一个JavaFX ContextMenu分配给鼠标右键单击一个scrollpane。它会打开,但当您在scrollpane外部单击时,它不会关闭。我可以在scrollpane中添加另一个鼠标事件来隐藏它,但是这只能解决一个问题。主要的问题是,当我单击scrollpane的任何组件时,上下文菜单仍然是打开的。 示例:通过鼠标右键单击打开弹出窗口,然后单击按钮。弹出菜单仍然打开。 文档中说有一个s
PrimeFaces 4.0、Glassfish 3.1.2、Mojarra 2.1.6 我创建了一个p:dataTable和一个对dataTable的contextMenu引用。dataTable的第一列包含p:commandLink。问题是,如果我用鼠标右键单击commandLink,则该行不会被选中。如何选择实际行?我用Javascript尝试了一下,但没有结果。 我想,我应该使用Prime
我正在尝试JavaFX,但仍然有很多可能是愚蠢的初学者问题。 我今天的问题如下: 我在Scene builder and Controller中创建了一个流程窗格,我想在其中添加一个右键单击选项,打开一个关联菜单。 通过场景生成器,我添加了OnContextMenuRequest函数并在控制器中定义了它。 为了检查,我在函数中添加了一个打印命令和一个对话框,效果很好。 然而,上下文菜单不起作用。。
因此,我仍然有点了解JavaFX,我能够禁止在文本框中输入文本,但我不知道如何防止右键单击时出现上下文菜单。有人知道如何防止右键单击时弹出默认上下文菜单吗?`