- 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); 点关闭的时候,关掉程序