我有一个扩展 JFrame 的类,我想在面板上添加一个 JComboBox。当我这样做时,JComboBox 的大小非常大。我想改变它的大小,但不知道该怎么做。 .setSize()
和 .setPreferredSize()
不起作用。 JFrame 的布局必须是 GridLayout。
public CountryController() {
setLayout(new GridLayout(1, 3));
panel1.setPreferredSize(new Dimension(180, 600));
//panel1.setLayout(new FlowLayout(FlowLayout.LEFT));
panel1.setLayout(new BoxLayout(panel1, BoxLayout.Y_AXIS));
panel1.setBorder(BorderFactory.createMatteBorder(0, 0, 0, 1, Color.BLACK));
panel1.add(new JLabel("Some text:"));
//list countries
JScrollPane scrollPane = new JScrollPane(jDropDown);
scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
jDropDown.setOpaque(true);
jDropDown.setBorder(BorderFactory.createMatteBorder(0, 1, 0, 1, Color.BLACK));
jDropDown.setBackground(Color.LIGHT_GRAY);
panel1.add(scrollPane);
getContentPane().add(panel1);
}
我有:
我想要什么:
最佳答案
我的解决方案是方法setMaximumSize(new Dimension(150, 25))
。在 BoxLayout
组件中添加了最大尺寸,此方法可以帮助我更改最大尺寸。
关于java - 如何更改 JComboBox 的高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28629662/