我已经搜索了很多,但是没有找到如何在JavaFX中创建应用程序菜单的信息。
我看到了一个名为“Jayatana”的项目,似乎可以让应用程序在Ubuntu上拥有适当的应用程序菜单,至少在使用Intellij时(作为示例)。
我还看到一些建议,对于OS X用户,可以使用以下类似的方法:
final List<MenuBase> menus = new ArrayList<>();
menus.add(GlobalMenuAdapter.adapt(menu));
Toolkit.getToolkit().getSystemMenu().setMenus(menus);
还有一个名为NSMenuFX的项目,同样适用于OS X。
我也看到了java-gnome项目,我认为它只适用于Swing。
但我真正想要的是以非特定于操作系统的方式创建应用程序菜单。
我很乐意使用第三方jar或其他任何可以完成繁重工作的工具,但是,是否存在类似于此的东西呢?
这时,我最好的选择是使用Swing创建JavaFX应用程序的外壳,并使用与Swing集成应用程序菜单的方法。如果是这种情况,是否有一些可以自动从JavaFX中处理并切换不同实现的工具呢?
编辑
最终,我只是简单地使用了Swing和JavaFX的组合。我将JavaFX应用程序放在内部,这使我可以使用已经在Swing中工作的应用程序菜单。
虽然不是理想的解决方案,但确实可行。
setPreferencesHandler
和setAboutHandler
。 - VGR