0

わかりました、もう一度助けが必要です。何らかの理由でボタンをクリックすると、ボタンは消えますが、パネルは消えません

コードは次のとおりです。

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class MainMenu extends JPanel implements ActionListener{

ImageDirectory ID = new ImageDirectory();
PlayMenu PM = new PlayMenu();
JButton Play;
CardLayout CL;
Image BG;

    public MainMenu(){

    CL = new CardLayout(180,220);
    setLayout(CL);
    Play = new JButton("play");
    Play.addActionListener(this);
    ImageIcon BGSource = new ImageIcon(ID.Background);
    BG = BGSource.getImage();
    add(Play, "Play");
    add(PM, "PMenu");
    }

    public void actionPerformed(ActionEvent e){

        if(e.getSource() == Play){

            CL.show(this, "PMenu");
            }
        }

        public void paintComponent(Graphics g){

            g.drawImage(BG,0,0,500,500,this);
            }
 }

ボタンがクリックされたときに表示しようとしたクラスは次のとおりです。

import javax.swing.*;
import java.awt.*;

public class PlayMenu extends JPanel{

public PlayMenu() {}


}
4

1 に答える 1

0

本来の働きをしているのだろう。新しい PlayMenu は元の MainMenu を置き換えています。PlayMenu コンストラクターに setBackground(Color.RED) を追加して、以前の MainMenu を置き換えるかどうかを確認してください。

于 2011-08-13T00:22:58.873 に答える