0

这是一个测试类,我有两个 JPanel 和一个 JMenuBar(我在测试其他东西时覆盖了这些类,这些类确实有效)。不幸的是,当我尝试使用 setComponentZOrder() 时,JMenuBar 不再出现。当 setComponentZOrder() 部分被注释掉时,它工作得很好。

任何帮助是极大的赞赏。

    import java.awt.*;
    import javax.swing.JFrame;

    public class Main extends JFrame
    {
        Panel test1 = new Panel(Color.GREEN);
        Panel test2 = new Panel(Color.BLUE);
        Menuuuuu menuBar = new Menuuuuu();

        public static void main (String []args)
        {   
            new Main();
        }

        public Main()
        {
            super();
            setSize(500,500);
            Container c = getContentPane();
            c.setLayout(null);
            c.setBackground(Color.white);

            test1.setBounds(0,0,500,500);
            c.add (test1);

            test2.setBounds(0,0,500,500);
            c.add(test2);

            setJMenuBar(menuBar);
            setComponentZOrder(test1,0);
            setComponentZOrder(test2,1);
            setVisible(true);
        }
    }
4

1 回答 1

0
setComponentZOrder(test1,0);
setComponentZOrder(test2,1);

您正在设置框架上组件的 ZOrder。

您想在内容窗格上设置组件的 ZOrder:

c.setComponentZOrder(test1,0);
c.setComponentZOrder(test2,1);
于 2013-06-13T15:49:29.053 回答