JavaFx 复制超链接

标签 java javafx

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

最佳答案

有几种方法可以处理这个问题。

使用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);
        }
    });

在我看来,就实际突出显示和选择链接文本而言,这需要做的工作比其值(value)要多得多。

关于JavaFx 复制超链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50975394/

相关文章:

JavaFX |英特尔lij : Create elevated application

java - 如何设置动态填充的多级下拉框表单?

java - 为什么子 JComponent 没有调用 Paint(Graphics g)?

java - 从 Java 应用程序备份 MySQL 数据库

java - 玩家与敌人发生冲突时结束游戏

java - 更具体的 javafx 数据验证

JavaFX Timeline/KeyFrame - 传递的值不正确

java - 如何在不使用 PowerMock 中的 PrepareFor 注释的情况下模拟私有(private)方法?

java - 如何确定旋转图像的最终位置或角度

java - 如何更改 JFrame 中组件的尺寸