JInternalFrame上有多个面板

时间:2016-03-28 11:51:18

标签: java jpanel jinternalframe

我正在使用JInternalFrame,我可以在其上添加多个面板,但我无法调整每个面板的大小。我确实使用BorderLayout作为内部框架的布局管理器。

到目前为止,这是我的代码

public class Main{
JDesktopPane dp = new JDesktopPane();
JInternalFrame jif = new JInternalFrame(null,false,true,false,true);
public Main(){
    JPanel p = new JPanel(){{
        setOpaque(false);
    }};
    JPanel p1 = new JPanel(){{
        setBackground(Color.red);
    }};
    JPanel p2 = new JPanel(){{
        setBackground(Color.blue);
    }};
    JPanel p3 = new JPanel(){{
        setBackground(Color.orange);
        setSize(1300,1300);
    }};
    ((javax.swing.plaf.basic.BasicInternalFrameUI)jif.getUI()).setNorthPane(null);
    jif.setVisible(true);
    jif.setSize(460,430);

    jif.setLayout(new BorderLayout());

    jif.getContentPane().add(p2, BorderLayout.SOUTH);
    jif.add(p1, BorderLayout.CENTER);
    jif.getContentPane().add(p3, BorderLayout.EAST);


    jif.add(p, BorderLayout.NORTH);
    jif.setBackground(Color.black);

    dp.add(jif);


    JFrame f = new JFrame();
    f.add(dp);
    f.setSize(500, 500);
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    f.setVisible(true);
}


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

}

一如既往,谢谢!

0 个答案:

没有答案