试图做出乒乓球,我差不多完成了。我已经设置好了,所以当一个玩家获得5分时,另一个JFrame打开。在该JFrame上,有两个按钮;一个再打,一个打开记分牌(最近三场比赛的记录)。出于某种原因,我无法获得打开记分牌的按钮。会爱一些帮助搞清楚什么是错的。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,我仍然认为我在我原来的评论中提出了两个有效的观点。但是,由于它造成了混乱,我将删除评论,并在未来不发表评论。 – camickr