0

CardPanel という JPanel サブクラスを使用して画像を表示しています。hitYourself() メソッドで currentPanel という CardPanel を削除し、CardPanel の新しいインスタンスを currentPanel フィールドに割り当ててから、新しい CardPanel オブジェクトを JFrame に追加しようとしています。何らかの理由で、hitYourself() メソッドからパネルを削除したり、新しい CardPanel を追加したりできません。hitYourself のコードを play メソッドに入れると、期待どおりに動作します。関連するイベントかどうかはわかりませんが、 JButton に追加した ActionListener を介して hitYourself メソッドが呼び出されています。ActionListener が機能しており、メソッドが呼び出されることを確認しました。hitYourself() で JFrame から JPanel を削除できないのはなぜですか?

    public void play(){
    yourCards.add(deckValues[getAvailableCardIndex()]);
    yourCards.add(deckValues[getAvailableCardIndex()]);
    dealerCards.add(deckValues[getAvailableCardIndex()]);
    dealerCards.add(deckValues[getAvailableCardIndex()]);
    currentPanel = new CardPanel(yourCards,dealerCards);
    frame.add(currentPanel);


    }

    public void hitYourself(){

    yourCards.add(deckValues[getAvailableCardIndex()]);
    frame.remove(currentPanel);
    currentPanel = new CardPanel(yourCards,dealerCards);
    frame.add(currentPanel);

    }
4

1 に答える 1

0

画面の塗り直しは試しましたか?

于 2013-04-26T02:22:10.897 に答える