2

ボタンと行を追加するためにcom.jgoodies.forms.builder.PanelBuilderを使用しています。次に、PanelBuilder.getPanel()を呼び出して、パネルを JPopupMenu にアタッチします。

PanelBuilder が生成したパネルから、添付されたコンポーネントの一部を削除して再添付する方法はありますか: 添付されたボタンの 1 つと対応する空の行 (PanelBuilder.appendRow("f:30px で追加) を動的にブレンドイン/ブレンドアウトしたい"))。

ありがとう。

4

2 に答える 2

2

コンポーネントの削除は機能しますが、パネルに未使用のスペースが残ります。JPanel.revalidate() は、JButton を追加する前に PanelBuilder.appendRow() が使用されなかった場合にのみ機能します。

また、削除した JButton を再接続できませんでした。JPanelのコンポーネント一覧には表示されているのに表示されていません。

そのため、リクエストごとに新しい JPanel を動的に作成し、それを JPopupMenu に割り当てました。

于 2010-07-20T17:19:42.730 に答える
0

初期アイテムへの ketp 参照がある場合、実行を妨げるものは何もありません。

myPanel.remove(theComponent);
于 2010-07-20T15:52:39.137 に答える