JavaFx复制超链接

时间:2018-06-21 18:30:53

标签: java javafx

我知道可以突出显示JavaFx中的标签并将其复制到系统剪贴板,我想知道是否可以对超链接执行相同的操作。有人对此有解决方案吗?欢迎所有建议,谢谢。

1 个答案:

答案 0 :(得分:1)

有两种处理方法。

使用ContextMenu

ContextMenu copyMenu = new ContextMenu();
MenuItem copyLink = new MenuItem("Copy link...");
copyLink.setOnAction(event ->  {
    final Clipboard cb = Clipboard.getSystemClipboard();
    final ClipboardContent content = new ClipboardContent();
    content.putString(link.getText());
    cb.setContent(content);
});

使用MouseEvent

(捕获链接的中间点击)

    link.setOnMouseClicked(event -> {
        if (event.getSource().equals(MouseButton.MIDDLE)) {
            final Clipboard cb = Clipboard.getSystemClipboard();
            final ClipboardContent content = new ClipboardContent();
            content.putString(link.getText());
            cb.setContent(content);
        }
    });

在我看来,实际上要突出显示并选择链接的文本,这需要做的工作远远超出其价值。