我想问一下如何通过将JTextFields
放在一个数组(for循环有用)然后setBounds
(使用绝对布局[或null])来添加JTextFields
。
例如,我想在for循环中创建三个setBounds
,其中{{1}}的X必须是50,然后是100然后是150.任何帮助都将受到赞赏。
答案 0 :(得分:1)
new JTextField(15)
的构造函数选择合适的布局管理器,让 it 为您定位。例如,如果您想要一个4x4文本字段的网格,则可以使用GridLayout(4, 4)
JPanel panel = new JPanel(new GridLayout(4, 4));
JTextField[][] fields = new JTextField[4][4];
....
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
JTextField jtf = new JTextField(15);
fields[i][j] = jtf;
panel.add(jtf);
}
}
注意:我使用2D数组,您可以轻松地引用字段
您应该查看Laying out Components Within a Container,了解其他布局管理器的可用性,并了解它们的工作原理。