我正在使用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();
}
}
一如既往,谢谢!