如何在Java Swing应用程序中实现帮助菜单

如何在Java Swing应用程序中实现帮助菜单,java,macos,swing,menu,Java,Macos,Swing,Menu,OSX应用程序在菜单栏的右侧有一个帮助菜单。单击“帮助”菜单时,会打开一个菜单,顶部有一个搜索框,下面有几个菜单项 如何在Java Swing应用程序中实现这一点?如果您要编写Java代码,那么尝试使UI看起来像任何特定操作系统都不是一个好主意-其他用户看不到它 默认情况下,菜单项是按钮。您可能能够从JMenuItem派生一个类,该类将文本框添加到其客户端区域,同时保留“搜索”图标的按钮单击功能。我不知道这是否会有效,所以请考虑这是免责声明。 +--- Bounds of normal JMen

OSX应用程序在菜单栏的右侧有一个帮助菜单。单击“帮助”菜单时,会打开一个菜单,顶部有一个搜索框,下面有几个菜单项


如何在Java Swing应用程序中实现这一点?

如果您要编写Java代码,那么尝试使UI看起来像任何特定操作系统都不是一个好主意-其他用户看不到它

默认情况下,菜单项是按钮。您可能能够从JMenuItem派生一个类,该类将文本框添加到其客户端区域,同时保留“搜索”图标的按钮单击功能。我不知道这是否会有效,所以请考虑这是免责声明。
+--- Bounds of normal JMenuItem ---+
|+-------------------------+ Search|
||          JTextField     |  icon |
|+-------------------------+       |
+----------------------------------+

只需添加一个名为“Help”的JMenu,并将其添加到JMenuBar。至少在我运行在英语OS X(Snow Leopard and Lion,Java 6)上的应用程序中,系统会自动将搜索字段添加到帮助菜单中。
你已经试过这个了吗?如果不起作用,您使用的Java版本和操作系统版本是什么?

您是否看过任何在Mac用户中流行的开源Java应用程序(我不知道,因为我不是Mac用户)?cello,您确实是对的。搜索框已出现。干得好,谢谢。其他语言呢?例如,“帮助”在法语中译为“助手”,在意大利语中译为“Aiuto”,在西班牙语中译为“Ayuda”,在葡萄牙语中译为“Ayuda”,在德语中译为“Hilfe”,在荷兰语中译为“Hulp”,在瑞典语中译为“Hjälp”。请参阅我的以查看问题的屏幕截图。