ピンポンを作ろうとしています。私はそれが設定されているので、プレーヤーが5点を得たときに別のJFrameが開きます。そのJFrameには2つのボタンがあります。 1つはもう一度プレーし、もう1つはスコアボード(最後の3つの試合の記録)を開く。何らかの理由で、私はスコアボードを開くためのボタンを得ることができません。何が間違っているかを理解するのに役立つでしょう。JFrameはActionListenerで開くことができません
import java.awt.Graphics;
import javax.swing.JPanel;
import javax.swing.JFrame;
public class scoreBoard extends JPanel {
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawLine(0, 50, 200, 50);
g.drawLine(0, 100, 200, 100);
g.drawLine(0, 150, 200, 150);
g.drawLine(95, 0, 95, 230);
g.drawString("PLAYER 1", 15, 30);
g.drawString("PLAYER 2", 115, 30);
g.drawString(String.valueOf(gameOver.Score[0][0]), 15, 80);
g.drawString(String.valueOf(gameOver.Score[0][1]), 115, 80);
g.drawString(String.valueOf(gameOver.Score[1][0]), 15, 130);
g.drawString(String.valueOf(gameOver.Score[1][1]), 115, 130);
g.drawString(String.valueOf(gameOver.Score[2][0]), 15, 180);
g.drawString(String.valueOf(gameOver.Score[2][1]), 115, 180);
}
public static void main(String[] args) {
scoreBoard board = new scoreBoard();
JFrame boardFrame = new JFrame("Score Board");
boardFrame.setSize(200, 230);
boardFrame.setVisible(true);
boardFrame.setResizable(false);
boardFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
boardFrame.add(board);
}
}
これはスコアボードのクラスです。
scores = new JButton("Recent Scores");
scores.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
scoreBoard board = new scoreBoard();
}
});
これは私がスコアボードを開くために持っているActionListenerです。
ありがとうございます。
スコアボードのコンストラクタはありますか?現時点では、私が見ているのは、デフォルトのコンストラクタ呼び出しでインスタンス化されないメインメソッドです。 – Compass
あなたのscoreBoardの主な方法を見てください、あなたのactionPerformedメソッドがやっているべき例があります – MadProgrammer
@MadProgrammer、私はまだ元のコメントに2つの有効な点を作ったと思います。しかし、それが混乱を引き起こしたので、私はコメントを削除し、将来コメントすることを控えます。 – camickr