(From Swing)中的JFrame允许您设置菜单栏(使用JFrame.setMenuBar(mb)的MenuBar实例;).此菜单栏可以显示在不同的位置,具体取决于其运行的系统.如果运行应用程序的操作系统在屏幕顶部有一个菜单栏,则JFrame中设置的此菜单栏通常会出现在此菜单栏中.如果不支持,菜单栏将显示在框架顶部.
您可以在下面的示例中看到不同系统上的不同行为:
这是我用来设置菜单栏的代码示例:
// Initialize a menu bar
MenuBar mb = new MenuBar();
// Initialize the menu and some menu items, add these to the menu bar
Menu m = new Menu("Menu 1");
MenuItem mi1 = new MenuItem("Menu Item 1");
MenuItem mi2 = new MenuItem("Menu Item 2");
MenuItem mi3 = new MenuItem("Menu Item 3");
m.add(mi1);
m.add(mi2);
m.addSeparator();
m.add(mi3);
mb.add(m);
// Set the menu bar
setMenuBar(mb);
我的问题是:如何检查菜单栏是否会显示在框架本身或系统的菜单栏中(如果支持)?如果有任何可能的方法来检查这一点而没有初始化和定义菜单栏,那将是很好的.
也许这是不可能的,如果是这样的话,是否可以在定义菜单栏后检查同样的问题?