Eclipse - Java导入似乎缺失了吗?

时间:2012-12-18 05:52:27

标签: java eclipse jmenubar

我正在玩JMenu课程,并发生了意想不到的事情。

我运行下面的代码,JFrame出现,但MenuBar和内容却没有。 但是,当我用鼠标调整JFrame的大小时,元素就会存在。

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;

public class Main {
  public static void main(String[] args) {
    JFrame frame = new JFrame("test");
    frame.setVisible(true);
    frame.setSize(300,300);     
    frame.setLocationRelativeTo(null); // centered on monitor   
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JMenuBar menubar = new JMenuBar();
    frame.setJMenuBar(menubar);
    menubar.setVisible(true);

    JMenu file = new JMenu("File");
    menubar.add(file);

    JMenuItem exit = new JMenuItem("Exit");
    file.add(exit);

    JMenu help = new JMenu("Help");
    menubar.add(help);

    /**
     * Label and text and button
     */
    JLabel label = new JLabel("Hello there");
    JPanel panel = new JPanel();
    frame.add(panel);
    panel.add(label);

    JButton button = new JButton("Submit Button");
    panel.add(button);
    button.setToolTipText("this is my tooltip text");    
  }
}

任何人都可以看到我无法看到的任何可疑之处吗?

1 个答案:

答案 0 :(得分:0)

原来它只是frame.setVisible(true);

我需要把它放得更远。