我正在寻找一种解决方案,以便在JTextFields
中对齐两个GridBagLayout
不同大小的JTextField
。不是保持 GridBagConstraints gbc = new GridBagConstraints();
gbc.anchor = GridBagConstraints.FIRST_LINE_START;
gbc.ipady = 10;
JLabel lb1 = new JLabel("User: ");
JLabel lb2 = new JLabel("Name: ");
JLabel lb3 = new JLabel("First ");
JLabel nameLB = new JLabel("Last ");
JTextField tf1 = new JTextField(20);
JTextField tf2 = new JTextField(20);
JTextField nameTF = new JTextField(20);
gbc.gridx = 0;
gbc.gridy = 0;
add(lb1,gbc);
gbc.gridx = 0;
gbc.gridy = 1;
add(lb2,gbc);
gbc.gridx = 1;
gbc.gridy = 0;
gbc.gridwidth = 2;
add(tf1,gbc);
gbc.gridx = 1;
gbc.gridy = 1;
gbc.gridwidth = 1;
add(lb3,gbc);
gbc.gridx = 2;
gbc.gridy = 1;
gbc.gridwidth = 1;
add(tf2,gbc);
gbc.gridx = 1;
gbc.gridy = 2;
gbc.gridwidth = 1;
add(nameLB,gbc);
gbc.gridx = 2;
gbc.gridy = 2;
gbc.gridwidth = 1;
add(nameTF,gbc);
的原始大小,而是希望两者都在同一列中结束。
{{1}}
答案 0 :(得分:1)
我认为tf1是造成这个问题的原因。如果此文本字段未延伸到末尾,则可以添加填充约束。尝试
gbc.fill = GridBagConstraints.HORIZONTAL;
pane.add(tf1, gbc);
如果这不起作用,您可以发布有关问题的完整代码或更多说明吗?