JFrame 内で JPanel を動的に置換する方法
Java Swing アプリケーションでは、JFrame がメイン アプリケーション ウィンドウとしてよく使用されます。 JPanel を含むさまざまなコンポーネント。場合によっては、ユーザーのアクションに応じて、ある JPanel を別の JPanel に置き換える必要が生じることがあります。これは、CardLayout を使用して実現できます。
CardLayout を使用すると、複数の子パネルを保持できるコンテナ (この場合は親 JPanel) を定義できます。コンテナのレイアウト マネージャーを CardLayout に変更することで、子パネルをシームレスに切り替えることができます。
このソリューションを実装するには:
これらのパネルを親 JPanel に追加します:
JPanel parentPanel = new JPanel(new CardLayout()); parentPanel.add(panel1, "panel1"); parentPanel.add(panel2, "panel2");
親 JPanel を JFrame のコンテンツ ペインに追加します:
JFrame frame = new JFrame(); frame.getContentPane().add(parentPanel);
CardLayout の show メソッドを使用して、表示されるパネルを変更できます。
CardLayout cardLayout = (CardLayout) parentPanel.getLayout(); cardLayout.show(parentPanel, "panel2");
このアプローチにより、JFrame 内のパネルを動的に置き換えることができます。これにより、アプリケーションの UI をその場で変更できる柔軟性が得られます。
以上がJava Swing で JFrame 内の JPanel を動的に置き換えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。