【发布时间】:2014-03-17 18:51:19
【问题描述】:
文本字段比我想要的要宽,我尝试更改 new JTextField("", 5) 部分中的数字,但它不会影响我打开框架时的宽度
if (eventSource == bestelOnderdelen) {
ArrayList<Integer> onderdeelNrs = new ArrayList<Integer>();
ArrayList<String> onderdeelOmschrijving = new ArrayList<String>();
for (int i = 0; i < modelOnderdelen.getRowCount(); i++) {
if ((boolean) modelOnderdelen.getValueAt(i, 0)) {
onderdeelNrs.add(Integer.parseInt((String)modelOnderdelen.getValueAt(i, 1)));
onderdeelOmschrijving.add((String) modelOnderdelen.getValueAt(i, 2));
}
}
bestellenOnderdelen = new JPanel();
bestellenOnderdelen.setLayout(new FlowLayout());
bestellenOnderdelen.add(new JLabel("Hoeveel wilt u van de volgende artikelen bestellen?"));
for(Integer a: onderdeelNrs){
bestellenOnderdelen.add(new JLabel(Integer.toString(a)+" "+onderdeelOmschrijving.get(onderdeelNrs.indexOf(a))));
bestellenOnderdelen.add(new JTextField("", 5));
}
if(JOptionPane.showConfirmDialog(null, bestellenOnderdelen) == JOptionPane.YES_OPTION){
}
}
编辑:
我已将布局从bestellenOnderdelen.setLayout(new BoxLayout(bestellenOnderdelen, BoxLayout.Y_AXIS)); 更改为bestellenOnderdelen.setLayout(new FlowLayout());,但现在我面临另一个问题,如何为面板提供固定宽度和可变高度?
【问题讨论】:
-
Columns 只设置首选宽度。需要通过
setSize手动设置宽度或者修改布局 -
您需要通过 setSize 手动设置宽度 不,您永远不会对组件进行任何手动调整大小(或定位)
标签: java swing jtextfield layout-manager