Javafx 文本的上下文菜单

Javafx 文本的上下文菜单,javafx,javafx-2,javafx-8,Javafx,Javafx 2,Javafx 8,我要为此文本创建上下文菜单: Text chartSubtitle = new Text("Some text"); 我一般用鼠标右键点击我想创建菜单与菜单项“选择文本”,这将发送到Windows剪辑板的文本,以便我可以在其他应用程序中使用的文本 你知道我该怎么做吗?你可以参考本教程,了解如何设置和编写上下文菜单的基本代码(有点复杂): 但是,对于另一部分:将文本添加到剪贴板的实际操作,类似这样的操作可能会起作用: final Clipboard clipboard = Clipbo

我要为此文本创建上下文菜单:

Text chartSubtitle = new Text("Some text");
我一般用鼠标右键点击我想创建菜单与菜单项“选择文本”,这将发送到Windows剪辑板的文本,以便我可以在其他应用程序中使用的文本


你知道我该怎么做吗?

你可以参考本教程,了解如何设置和编写上下文菜单的基本代码(有点复杂):

但是,对于另一部分:将文本添加到剪贴板的实际操作,类似这样的操作可能会起作用:

    final Clipboard clipboard = Clipboard.getSystemClipboard();
    final ClipboardContent content = new ClipboardContent();
    content.putString("Some text");
    clipboard.setContent(content);
更新:

要创建上下文菜单(从上面引用的链接-参见页面底部附近的示例22-9),您可以对其进行如下调整:

//Example 22-9 Defining a Context Menu

final ContextMenu cm = new ContextMenu();
MenuItem cmItem1 = new MenuItem("Some Text");
cmItem1.setOnAction(new EventHandler<ActionEvent>() {
    public void handle(ActionEvent e) {
        Clipboard clipboard = Clipboard.getSystemClipboard();
        ClipboardContent content = new ClipboardContent();
        content.putString("Text from some location");
        clipboard.setContent(content);
    }
});

cm.getItems().add(cmItem1);
pic.addEventHandler(MouseEvent.MOUSE_CLICKED,
    new EventHandler<MouseEvent>() {
        @Override public void handle(MouseEvent e) {
            if (e.getButton() == MouseButton.SECONDARY)  
                //handle the right-click (i.e. a context menu)
                //user implemented - so this is entirely up to you
        }
});
//示例22-9定义上下文菜单
最终上下文菜单cm=新上下文菜单();
MenuItem cmItem1=新MenuItem(“某些文本”);

cmItem1.setOnAction(new EventHandler

我如何为文本创建上下文菜单?@user1285928:已更新。注意:您必须了解如何处理右键单击-换句话说,您如何选择文本。有多种方法可以做到这一点:一种方法是将
TextField
对象的内容分配给内容。但是,这取决于您。我想将上下文菜单添加到文本而不是文本字段。@user1285928:没关系。只需创建一个
Text
对象即可-相同的概念适用于两者。;)文本没有setContextMenu()。或者我错了?