2014-08-29 3 views
2

Иногда в моем меню иногда два элемента, иногда все, но если элементы не видны, мне нужно изменить размер моего окна. Если я изменил размер моего окна, появятся элементы. Зачем?Почему я не вижу все элементы для моей меню?

Это мой код:

//Class TextEditor start 
public class TextEditor extends JFrame{ 

private JMenuBar menuBar; 
private JMenu file,edit,format,view,help; 
private JMenuItem newFile; 
private JMenuItem exit; 

//Main method start 
public static void main(String[] args){ 
    try{ 
     UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); 
    }catch (Exception e){ 

    } 
    new TextEditor(); 
} 
//Main class end 


//Class constructor start 
private TextEditor(){ 
     super("Untitled"); 
     sendUI(this); 
     sendMenuBar(); 
    } 
//Class constructor end 

//Menu bar start// 
public void sendMenuBar(){ 
    menuBar = new JMenuBar(); 
    setJMenuBar(menuBar); 

    //File menu and Items 
    file = new JMenu(" File "); 
    newFile = new JMenuItem("New"); 
    exit = new JMenuItem("Exit"); 
    menuBar.add(file); 
    file.add(newFile); 
    file.add(exit); 

    //Edit menu and items 
    edit = new JMenu(" Edit "); 
    menuBar.add(edit); 

    //Format menu and items 
    format = new JMenu(" Format "); 
    menuBar.add(format); 

    //View menu and items 
    view = new JMenu(" View "); 
    menuBar.add(view); 

    //Help menu and items 
    help = new JMenu(" Help "); 
    menuBar.add(help); 
} 


private void sendUI(TextEditor texteditor) { 
    texteditor.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    texteditor.setSize(700,400); 
    texteditor.setLocationRelativeTo(null); 
    texteditor.setVisible(true); 
} 

} 
//Class TextEditor end 

Когда появляется ошибка:

enter image description here

После того как я изменил размер окна:

enter image description here

+2

вы можете позвонить senUI после отправкиMenuBar. – StackFlowed

+0

Спасибо @Aeshang. Это была проблема. –

+0

, пожалуйста, отметьте ответ как правильный, если он сработает для вас. – StackFlowed

ответ