没法控制,这个是布局管理器自动控制的,design当然没法弄。
South、East、West、North四个边角的宽高不会超过一定范围。一个办法就是你把主要的组件放到Center,其他组件手动代码添加。
不过用design很少有人用自动布局管理器的,一般都是setLayout(null),这样才好用。
BorderLayout控制大小好像不可以,控制方向到时没问题.
示例:
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.WindowConstants;
public class Demo2 extends javax.swing.JFrame {
private JButton jButton1;
private JButton jButton2;
private JButton jButton3;
private JButton jButton4;
private JButton jButton5;
public static void main(String[] args) {
Demo2 inst = new Demo2();
inst.setLocationRelativeTo(null);
inst.setVisible(true);
}
public Demo2() {
super();
initGUI();
}
private void initGUI() {
try {
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
jButton1 = new JButton("北");
jButton2 = new JButton("南");
jButton3 = new JButton("东");
jButton4 = new JButton("西");
jButton5 = new JButton("中");
getContentPane().add(jButton1, BorderLayout.NORTH);
getContentPane().add(jButton2, BorderLayout.SOUTH);
getContentPane().add(jButton3, BorderLayout.EAST);
getContentPane().add(jButton4, BorderLayout.WEST);
getContentPane().add(jButton5, BorderLayout.CENTER);
pack();
setSize(400, 300);
} catch (Exception e) {
e.printStackTrace();
}
}
}