0

这可能是一个愚蠢的问题,但我就是看不到!我有使用弹出菜单的 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;
4

1 回答 1

0

我想我会关闭这个 - 正如我在评论中所说,将 JMenu 更改为 JPanel 并添加

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

解决了这个问题,但我计划以不同的方式解决这个问题。不管怎么说,还是要谢谢你!

于 2011-09-30T16:27:46.920 回答