Как удалить компонент, добавленный с PanelBuilder? - PullRequest
2 голосов
/ 20 июля 2010

Я использую com.jgoodies.forms.builder.PanelBuilder для добавления кнопок и строк.Затем я вызываю PanelBuilder.getPanel () и присоединяю панель к JPopupMenu.

Существует ли способ удаления и повторного присоединения некоторых из прикрепленных компонентов из Panel, созданный PanelBuilder: я хочу динамически смешать одну из прикрепленных кнопок и соответствующую пустую строку (добавленную с PanelBuilder.appendRow ("f: 30px")).

Спасибо.

Ответы [ 2 ]

2 голосов
/ 20 июля 2010

Удаление компонента работает, но оно оставляет область неиспользуемого пространства на панели. JPanel.revalidate () работает только тогда, когда PanelBuilder.appendRow () не использовался до добавления JButton.

Кроме того, я не мог прикрепить удаленный JButton. Он появляется в списке компонентов JPanel, но не отображается.

Вот почему я пошел динамически создавать новую JPanel при каждом запросе и назначать ее JPopupMenu.

0 голосов
/ 20 июля 2010

Если у вас есть ссылки кет на исходный предмет, ничто не мешает вам сделать

myPanel.remove(theComponent);
...