-1

動作するCardLayoutを使用する方法を見つけることができませんでした。

私はポンゲームを作成しています。JFrameを拡張するクラスとJPanelを拡張する2つのクラスがあります。最初のJPanelでメソッドが起動されると、最初のJPanelから2番目のJPanelに切り替わるようにしようとしています。

これをどのように行いますか。コードを提供してください。

4

1 に答える 1

4

あなたがすることはCardLayoutあなたの2つを保持する親コンポーネントでを使用することJPanelです。親コンポーネントにsを追加するときは、それぞれにsを指定JPanelする必要があります。Stringこれは、後でカードを切り替えるために使用されます。

CardLayout cardLayout = new CardLayout();
JPanel parentComponent = new JPanel(cardLayout);
parentComponent.add( jPanel1, "Panel 1" );
parentComponent.add( jPanel2, "Panel 2" );

次に、カードを切り替える場合は、レイアウトマネージャーでメソッドを呼び出す必要があるCardLayoutため、親コンポーネントからメソッドを取得してキャストするか、親コンポーネントを作成するときにそのメソッドへの参照を保存する必要があります。カードを切り替えるには:

cardLayout.show( parentComponent, "Panel 1" ); // Shows panel 1
cardLayout.show( parentComponent, "Panel 2" ); // Shows panel 2
于 2011-11-04T00:28:55.113 に答える