在我的 OSX 应用程序上,我有一个带有 JMenus 和 Actions 的 JMenubar
editMenu= new JMenu("EDIT);
editMenu.add(new CopyAction());
editMenu.add(new PasteAction());
但我想向扩展坞添加菜单,我可以使用 Apple 扩展程序和:
Application.getApplication().setDockMenu(java.awt.PopupMenu popupMenu)
请注意,这是 awt 而不是 swing,所以我需要添加 MenuItems 而不是 JMenuItems
public class DockMenu extends PopupMenu
{
public DockMenu()
{
add(createMenuItemFromAction(new CopyAction()));
add(createMenuItemFromAction(new PasteAction()));
}
public MenuItem createMenuItemFromAction(Action action)
{
MenuItem mi = new MenuItem();
//TODO How do I convert
}
}
但我真的不清楚这种转换是如何进行的,因为 menuitem 没有使用操作