Poniżej znajduje się makieta kodu, nad którym pracowałem.Pobierz ograniczenia układu dla komponentu 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);
}
}
w zbiorniku jest metoda
public void add(Component comp, Object constraints)
Czy jest jakiś sposób, że możemy programowo uzyskać constraints
że ustawiony, jak getConstraints(...)
tak, że można go używać w celu późniejszego użycia?
W moim kodzie chcę go użyć do zastąpienia starego komponentu nowym w tym samym miejscu.
Co muszę zrobić po
Object constraintsForNamePanel =
dostać ograniczeń dla namePanel
.
Obecnie używam
pane.add(newNamePanel, "cell 1 1,growx");
To działa, ale problem jest używam WindowsBuilder
dla UI i mój UI jest jak zmienić kiedy dodać nowe elementy do pane
i I don” t chcesz skopiować i wkleić ograniczenia.