我需要你的帮助:)。这是我在此的头一篇博文。我正在尝试为我的 JFrame 创建一个菜单栏作为单独的类,我将从单独的类 MainBar 调用它。我怎样才能做到这一点?我尝试使用下面列出的代码并调用 new MainBar() 但我总是只得到带有菜单的 JFrame,上面没有项目。
我是否错过了这里的返回声明?感谢所有提示。谢谢!
public class MainBar extends JMenu{
public MainBar() { //What is return from this method? Component?
// Bar Menu
final WebMenuBar mainBar = new WebMenuBar();
mainBar.setMenuBarStyle(MenuBarStyle.standalone);
// Bar Menu Items
JMenu fileMenu = new JMenu("File");
JMenuItem exitMenuItem = new JMenuItem("Exit");
fileMenu.add(exitMenuItem);
JMenu editMenu = new JMenu("Edit");
JMenuItem cutMenuItem = new JMenuItem("Cut");
editMenu.add(cutMenuItem);
JMenuItem copyMenuItem = new JMenuItem("Copy");
editMenu.add(copyMenuItem);
JMenu viewMenu = new JMenu("View");
JMenu settingsMenu = new JMenu("Settings");
JMenu helpMenu = new JMenu("Help");
// adding menu items to bar menu
mainBar.add(fileMenu);
mainBar.add(editMenu);
mainBar.add(viewMenu);
mainBar.add(settingsMenu);
mainBar.add(helpMenu);
// should I put here return statement like return mainBar; ?
}
}
最佳答案
没关系,我已经找到答案了:
public class MainBar extends WebMenuBar{
public MainBar() {
// Bar Menu
final WebMenuBar mainBar = new WebMenuBar();
mainBar.setMenuBarStyle(MenuBarStyle.standalone);
// Bar Menu Items
JMenu fileMenu = new JMenu("File");
JMenuItem exitMenuItem = new JMenuItem("Exit");
fileMenu.add(exitMenuItem);
JMenu editMenu = new JMenu("Edit");
JMenuItem cutMenuItem = new JMenuItem("Cut");
editMenu.add(cutMenuItem);
JMenuItem copyMenuItem = new JMenuItem("Copy");
editMenu.add(copyMenuItem);
JMenu viewMenu = new JMenu("View");
JMenu settingsMenu = new JMenu("Settings");
JMenu helpMenu = new JMenu("Help");
// adding menu items to bar menu
add(fileMenu);
add(editMenu);
add(viewMenu);
add(settingsMenu);
add(helpMenu);
}
现在,当我使用 MainBar mainBar = new MainBar(); 从另一个类调用它时它生成菜单栏及其所有元素。总之谢谢大家了!
关于java - 使用 swing 菜单和 menuitem 对象调用类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25652010/