Dưới đây là một giả lập mã mà tôi đang làm việc.Nhận các ràng buộc bố cục cho một thành phần trong 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);
}
}
Trong container có phương pháp
public void add(Component comp, Object constraints)
Có cách nào mà chúng ta programatically có thể nhận được constraints
mà chúng ta thiết lập, như getConstraints(...)
để chúng tôi có thể sử dụng nó cho sau này sử dụng không?
Trong mã của tôi, tôi muốn sử dụng nó để thay thế thành phần cũ bằng một thành phần mới tại cùng một vị trí.
gì làm tôi phải làm sau khi
Object constraintsForNamePanel =
để có được các khó khăn cho namePanel
.
Hiện nay, tôi đang sử dụng
pane.add(newNamePanel, "cell 1 1,growx");
Nó đang làm việc nhưng vấn đề là tôi đang sử dụng WindowsBuilder
cho giao diện người dùng và giao diện người dùng của tôi cũng giống như thay đổi khi tôi thêm các thành phần mới cho pane
và tôi don' t muốn sao chép và dán các ràng buộc.