在Swing应用程序中,是否可以通过JTextField实现全局上下文菜单的剪切/复制/粘贴功能?

6
什么是为Swing应用程序实现全局默认上下文菜单的最佳方法,其中包括像JTextField之类的Windows标准剪切/复制/粘贴等弹出菜单?Tim Boudreau在这个javalobby线程中建议安装自定义UI委托,但那是针对Java 5编写的,所以我想知道今天是否有更好的方法。
是否有计划在未来的Swing版本中添加此行为?
1个回答

2

时机刚好。我的明天的博客文章将讨论如何使用全局事件监听器。简单地说,可以使用AWTEventListener(而不是自定义EventQueue)来监听MouseEvents,并检查鼠标事件是否为弹出触发器。

我会在明天下午(东部夏令时)发布该文章的链接。

然后您可以决定哪种方法更好。

您现在可以查看全局事件监听器 条目,了解一个非常简单的使用AWTEventListener的示例。


1
您介意在此发布您博客文章的部分内容吗?这样它就可以永久地保存在网站上了。 - John K
我将解释和示例都放在一个地方,这样它只需要在一个地方维护即可。这样当我回答问题时,我只需要提供一个简单的答案,我就可以花更多的时间回答其他问题。如果有什么你认为很重要的特定内容,你可以自己粘贴到这里,我不担心人们复制或使用代码。 - camickr
这个答案在2020年对于Swing仍然准确吗? - NWS
我不知道有任何添加到Swing以支持JTextField的全局剪切/复制/粘贴的功能。setComponentPopupMenu(…)方法在JDK1.5中被添加,但仍然需要手动为每个组件调用它。 - camickr

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接