JMenuItems не отображаются в JDialog - PullRequest
0 голосов
/ 30 сентября 2011

Это, наверное, глупый вопрос, но я просто не вижу его! У меня есть приложение Swing, которое использует всплывающее меню. Он работает нормально, но я хочу сделать меню постоянным (то есть, пока я его не закрою). Я в основном изменил JPopupMenu на JDialog, и я получаю панель JDialog, но пункты меню невидимы! Это, наверное, что-то очень очевидное, так что я, наверное, смущусь! Вот часть кода:

  JDialog buildNewItemMenu(DrawFBP base) {
    JDialog jd = new JDialog();
    jd.setSize(200, 300);
    JMenuItem menuItem = null;
    JLabel label2 = new JLabel();
    label2.setForeground(Color.BLUE);
    JMenu menu = new JMenu();       
    jd.add(menu);       
    jd.setVisible(true);
    menu.setVisible(true);
    menu.add(label2);
    menu.addSeparator();
    menuItem = new JMenuItem("Component");
    menuItem.addActionListener(base);
    menu.add(menuItem);
    ....
    menu.addSeparator();
    menuItem = new JMenuItem("Enclosure");
    menuItem.addActionListener(base);
    menu.add(menuItem);     
    return jd;

1 Ответ

0 голосов
/ 30 сентября 2011

Я думаю, что закрою это - как я сказал в комментарии, изменение JMenu на JPanel и добавление

  panel.setLayout(new BoxLayout(panel, BoxLayout.PAGE_AXIS)); 

решило проблему, но я планирую решить проблему другим способом.В любом случае, спасибо!

...