【发布时间】:2013-08-20 03:51:48
【问题描述】:
下面是我一直在编写的代码模型。
public class Pane {
private final JPanel pane;
private JPanel namePanel;
private final JTextField panIdField;
public Pane() {
pane = new JPanel();
pane.setLayout(new MigLayout("", "[][grow]", "[][][][][]"));
namePanel = new JPanel();
pane.add(namePanel, "cell 1 1,growx");
panIdField = new JTextField();
pane.add(panIdField, "cell 1 2,growx");
panIdField.setColumns(10);
}
public void replaceNameField(JPanel newNamePanel) {
this.namePanel = newNamePanel;
// Object constraintsForNamePanel =
pane.remove(namePanel);
pane.add(newNamePanel, constraintsForNamePanel);
}
}
Container里面有方法
public void add(Component comp, Object constraints)
有什么方法可以让我们以编程方式获取我们设置的constraints,例如getConstraints(...),以便我们以后使用它?
在我的代码中,我想用它在同一个地方用新组件替换旧组件。
之后我要做什么
Object constraintsForNamePanel =
获取namePanel 的约束。
目前,我正在使用
pane.add(newNamePanel, "cell 1 1,growx");
它正在工作,但问题是我正在为 UI 使用 WindowsBuilder,当我将新组件添加到 pane 并且我不想复制和粘贴约束时,我的 UI 会发生变化。
【问题讨论】:
标签: java swing layout constraints miglayout