Jay*_*Jay 1 java swing gridbaglayout
这是我使用GridBagLayout布局的:
但是,当我选择一个文件时,应该填充几个标签.这是我使用那些小的"..."按钮选择文件后的样子:
如您所见,整个布局搞砸了.我在actionlistener中所做的就是:
fileTxt = fileChooser.getSelectedFile();
fileTxtField.setText(fileTxt.getAbsolutePath());
labels = getLabels();
lbl1.setText(labels[0].toUpperCase());
Dimension size = lbl1.getPreferredSize();
lbl1.setMinimumSize(size);
lbl1.setPreferredSize(size);
lbl2.setText(labels[1]);
lbl2.setToolTipText(longLbl);
size = lbl2.getPreferredSize();
lbl2.setMinimumSize(size);
lbl2.setPreferredSize(size);
button1.setPreferredSize(new Dimension(20,25));
button2.setPreferredSize(new Dimension(20,25));
Run Code Online (Sandbox Code Playgroud)
因此,基本上,按钮将达到其原始尺寸而不是首选尺寸.这会弄乱整个布局.我该如何解决?所有组件都设置为不填充gridBagConstraints.fill的gridbagconstraint设置为GridBagConstraints.NONE - 但是,布局仍然搞砸了:(
UPDATE
根据你的建议,我删除了调用setPreferredSize()方法的代码,这就是我得到的:
显然,这是我想要避免的 - 一个比它的文本更大的按钮,这是在按钮上设置setPreferredSize的原因.现在我该怎么办?
不要打电话setPreferredSize()
.我们LayoutManager
这样做吧.
在GridBagConstraints
define fill
和weightx
parameters中定义应如何分配额外空间.
归档时间: |
|
查看次数: |
4595 次 |
最近记录: |