borderlayout/grouplayoutを使用してjpanelから特定の要素を削除する方法は?
-
26-10-2019 - |
質問
削除する必要があります Component
の中に Center
の JPanel
, 、しかし、しようとした後、勝ちません。
ここでこの方法を試しました:
borderlayoutを使用して、jpanelから中心要素を削除します
しかし、答えの方法は、コンパイル時間エラーを生成します。
Type mismatch: cannot convert from LayoutManager to BorderLayout
答えを間違って解釈していますか?
さらに、Grouplayoutから単一のコンポーネントのみを更新できるかどうかも興味があります。誰かがそれをする方法を教えてもらえますか?
編集:@mre:これがコードです:
BorderLayout layout = panel.getLayout();
panel.remove(layout.getLayoutComponent(BorderLayout.CENTER));
これは基本的にリンクと同じです。
皆さん、ありがとうございました!
解決
レイアウトマネージャーをborderlayoutにダウンしなければなりません。
BorderLayout layout = (BorderLayout) panel.getLayout();
ただし、どのコンポーネントが中央にあるかがわかっている場合は、削除するだけです。
panel.add(myComponent, BorderLayout.CENTER);
...
panel.remove(myComponent);
所属していません StackOverflow