0

我有一个在使用 Quaqua 的 OSX 上运行的 Java Swing 应用程序。所有的 TextFields 和 TextAreas 在右键单击时都有一个弹出菜单。这必须由 Quaqua 完成,因为它在 Swing 中不是标准的。

我的问题是:

如何在弹出菜单上设置自己的操作?

请注意。这是关于Quaqua弹出菜单而不是任何 Swing 弹出菜单的问题。如果您对 Quaqua 不熟悉,请不要回答。

4

2 回答 2

1

弹出菜单与常规菜单相同。Swing 关于菜单的教程涵盖了如何使用它们,如何插入条目,...。阅读该教程应该可以帮助您入门

于 2012-04-27T09:19:19.917 回答
0

Quaqua 设置的弹出菜单可以通过设置客户端属性来移除:

myTextField.putClientProperty("Quaqua.TextComponent.showPopup", Boolean.FALSE);

然后,您可以添加自己的 MouseListener 来处理创建自己的弹出菜单。

但是,我还没有想出要使这种更改全局化,因此我必须分别在每个文本字段上设置客户端属性,这有点痛苦。

于 2013-07-19T19:01:15.273 回答