我知道可以突出显示JavaFx中的标签并将其复制到系统剪贴板,我想知道是否可以对超链接执行相同的操作。有人对此有解决方案吗?欢迎所有建议,谢谢。
答案 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);
}
});
在我看来,实际上要突出显示并选择链接的文本,这需要做的工作远远超出其价值。