Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaFX图表上的Swing上下文菜单_Java_Swing_Javafx_Charts_Java 7 - Fatal编程技术网

JavaFX图表上的Swing上下文菜单

JavaFX图表上的Swing上下文菜单,java,swing,javafx,charts,java-7,Java,Swing,Javafx,Charts,Java 7,我主要在swing中开发一个应用程序,尽管图表对话框使用JavaFX。(图表在网格窗格中在JFXPanel中准确地说。) 首先,Chart没有实现setContextMenu方法来使用JFXContextMenu。我已经看到了一种解决方法,将处理程序附加到图表的右键单击上,但是当菜单失去焦点时,它不会从GUI中删除,而是会一直存在,直到用户1)触发它再次打开,或者2)单击菜单项 chart.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHa

我主要在swing中开发一个应用程序,尽管图表对话框使用JavaFX。(
图表
网格窗格中
JFXPanel中
准确地说。)

首先,
Chart
没有实现
setContextMenu
方法来使用JFX
ContextMenu
。我已经看到了一种解决方法,将处理程序附加到图表的右键单击上,但是当菜单失去焦点时,它不会从GUI中删除,而是会一直存在,直到用户1)触发它再次打开,或者2)单击
菜单项

chart.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>() {
    @Override
    public void handle(MouseEvent t) {
        if (t.getButton() == MouseButton.SECONDARY) {
            contextMenu.show(chart, t.getScreenX(), t.getScreenY());
        }
    }
});
chart.addEventHandler(MouseEvent.MOUSE_单击,新建EventHandler()){
@凌驾
公共无效句柄(MouseEvent t){
if(t.getButton()==MouseButton.SECONDARY){
show(chart,t.getScreenX(),t.getScreenY());
}
}
});
也就是说,我更喜欢使用Swing
jpopmpmenu
。如何将其绑定到我的
图表
并保持自然行为


谢谢大家!

我确定不可能使用
jpopmpmenu

ContextMenu
被添加到
JLabel

Label contextMenuLabel = new Label();
grid.add(contextMenuLabel, 0, 0); // Add to the same grid after adding the chart
contextMenuLabel.setPrefSize(width, height);
contextMenuLabel.setMinSize(width, height);
contextMenuLabel.setMaxSize(width, height);

ContextMenu contextMenu = new ContextMenu();

contextMenuLabel.setContextMenu(contextMenu);