6
以下は、私が取り組んできたコードのモックアップです。容器にJava Swingのコンポーネントのレイアウト制約を取得する
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);
}
}
方法
public void add(Component comp, Object constraints)
があります私たちは、後で使うためにそれを使用できるように、我々はプログラム的getConstraints(...)
のように、我々は設定constraints
を得ることができる方法はありますか?
私のコードでは、古いコンポーネントを同じ場所の新しいコンポーネントに置き換えるために使用したいと考えています。
私はnamePanel
の制約を取得するために
Object constraintsForNamePanel =
後に行うには何がありますか。
現在、私はそれが動作しているが、問題は「私はUIのためWindowsBuilder
を使用していて、私のUIは私がpane
に新しいコンポーネントを追加し、私はドン際に変更するようです
pane.add(newNamePanel, "cell 1 1,growx");
を使用しています制約をコピーして貼り付けたい。