如何在此代码中添加按钮?我不知道怎么放或放在哪里

时间:2014-04-11 03:16:02

标签: java swing jframe jbutton menubar

如何在此代码中添加按钮?我用菜单栏编写了一个代码,但我不知道在哪里添加按钮代码(JButton)。我的目标是编写一个包含菜单栏和按钮的程序,不在工具栏中,而是在打开的applet中。菜单栏仅用于设计,因为选项没有actionlisteners。 (对不起,我是新来的)

public class MenuBar extends JFrame {

    public MenuBar() {

        setTitle("Car Selection");
        setSize(300, 300);

        JMenuBar menuBar = new JMenuBar();
        JMenu exit;

        setJMenuBar(menuBar);

        JMenu fileMenu = new JMenu("File");
        JMenu editMenu = new JMenu("Edit");
        JMenu aboutMenu = new JMenu("About");
        JMenu helpMenu = new JMenu("Help");
        menuBar.add(fileMenu);
        menuBar.add(editMenu);
        menuBar.add(aboutMenu);
        menuBar.add(helpMenu);

        JMenuItem newAction = new JMenuItem("New");
        JMenuItem openAction = new JMenuItem("Open");
        JMenuItem exitAction = new JMenuItem("Exit");
        JMenuItem saveAction = new JMenuItem("Save");
        JMenuItem saveasAction = new JMenuItem("Save As");
        JMenuItem refreshAction = new JMenuItem("Refresh");

        JMenuItem undoAction = new JMenuItem("Undo");
        JMenuItem redoAction = new JMenuItem("Redo");
        JMenuItem cutAction = new JMenuItem("Cut");
        JMenuItem copyAction = new JMenuItem("Copy");
        JMenuItem pasteAction = new JMenuItem("Paste");
        JMenuItem optionAction = new JMenuItem("Options");

        JMenuItem registerAction = new JMenuItem("Register");
        JMenuItem versionAction = new JMenuItem("Version");
        JMenuItem aboutAction = new JMenuItem("About");
        JMenuItem policyAction = new JMenuItem("Policy");
        JMenuItem updatesAction = new JMenuItem("Updates");

        JMenuItem visitwebAction = new JMenuItem("Visit Web");
        JMenuItem tutorialsAction = new JMenuItem("Tutorials");
        JMenuItem feedbackAction = new JMenuItem("Feedback");
        JMenuItem dailynewsAction = new JMenuItem("Daily News");
        JMenuItem contactusAction = new JMenuItem("Contact Us");

        fileMenu.add(newAction);
        fileMenu.add(openAction);
        fileMenu.add(saveAction);
        fileMenu.add(saveasAction);
        fileMenu.add(refreshAction);
        fileMenu.addSeparator();
        fileMenu.add(exitAction);

        editMenu.add(undoAction);
        editMenu.add(redoAction);
        editMenu.add(cutAction);
        editMenu.add(copyAction);
        editMenu.add(pasteAction);
        editMenu.addSeparator();
        editMenu.add(optionAction);

        aboutMenu.add(registerAction);
        aboutMenu.add(versionAction);
        aboutMenu.add(aboutAction);
        aboutMenu.add(policyAction);        
        aboutMenu.addSeparator();
        aboutMenu.add(updatesAction);

        helpMenu.add(visitwebAction);
        helpMenu.add(tutorialsAction);
        helpMenu.add(feedbackAction);
        helpMenu.add(dailynewsAction);
        helpMenu.addSeparator();
        helpMenu.add(contactusAction);

    }

    public static void main(String[] args) {
        MenuBar me = new MenuBar();
        me.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        me.setVisible(true);    
    }
 }

2 个答案:

答案 0 :(得分:4)

我认为你在谈论使用JToolBar

阅读How to Use Toolbars上Swing教程中的部分,了解更多信息和示例。

此外,您将需要使用Actions编写代码,以便可以通过菜单项和工具栏共享Action。本教程还有一个关于How to Use Actions的部分。

答案 1 :(得分:0)

试试这个:

JButton jb = new JButton()
JPanel p = new JPanel(new BorderLayout());
p.add(jb)
getContentPane().add(p);

实际上,您可以在声明JMenuBar menuBar之前将它放在开头。

JavaDocs TutorialsJavaDocs for JButton

修改:回复您的评论:

使用AbsoluteLayout或其他东西,而不是使用BorderLayout。试试这些页面:

Infousage