首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

设置为FlowLayout后,组件不能设置size,该如何处理

2012-04-03 
设置为FlowLayout后,组件不能设置sizeJava codepublic class Test3 extends JFrame{private JTextField te

设置为FlowLayout后,组件不能设置size

Java code
public class Test3 extends JFrame{    private JTextField textField;    public Test3() {        getContentPane().setLayout(new FlowLayout(FlowLayout.CENTER, 5, 5));                JComboBox comboBox = new JComboBox(new String[]{"1","2","3"});//        comboBox.setSize(new Dimension(60,10));//doesn't work        getContentPane().add(comboBox);                textField = new JTextField();        textField.setSize(100,50);//do not work either        getContentPane().add(textField);        textField.setColumns(10);        this.pack();        this.setVisible(true);    }    public static void main(String...args){        new Test3();    }}

代码中的两处地方,JComboBox和JTextField不能改变size,请如在保证FlowLayout布局的情况下,怎么才能改变size?

[解决办法]
既然使用布局管理了

那 size 是由布局管理器来控制了

你需要的设置控件的以下三个属性:
preferredSize
maximumSize
minimumSize
布局管理器会根据这三个属性,来计算控件的 size

只是不用布局管理器,即setLayout(null); 时
才需要自己设置 size
[解决办法]
看来真记错了 = =!

记得加上这一句:this.setDefaultCloseOperation(3); 点关闭的时候,关掉程序

热点排行
Bad Request.