在游戏结束时出现一个窗口

时间:2015-06-03 03:33:18

标签: java events event-handling

您可以看到我的游戏here的摘要。在确定玩家赢了或输了之后我想要一个窗口弹出,它只会用大写字母说“你赢”等。我知道如何制作一个框架,如下:

import javax.swing.*;

public class Frame extends JFrame {

    private static final long serialVersionUID = 1L;

    public static void main(String[] args) {
        new Frame().setVisible(true);

    }

    public Frame() {
        super("Are You Smarter Than a 5th Grader?");
        setSize(600,600);
        setResizable(false);
        setDefaultCloseOperation(EXIT_ON_CLOSE);

        JButton button = new JButton("YOU WIN");
        add(button);
    }
}

但是我根本不知道要实现它,所以它会出现在我游戏的某个特定时间。谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

JOptionPane是在Swing UI中显示对话框的首选方式。

在你的" isCorrect"方法:

public void isCorrect() {
  if(correct) {
    JOptionPane.showMessageDialog(null, "You Win!");
  } else { 
    JOptionPane.showMessageDialog(null, "You Lose!");
  }

}

<强>更新

重新阅读之后,您的初始应用程序似乎是一个命令行应用程序(我认为它在GUI中),您只需将null(如上所述)传递到JOptionPane方法。

答案 1 :(得分:0)

定义一个事件,将其称为onGameDone,在游戏结束时引发它,并将您的帧代码放入事件处理程序中。有关活动的更多信息:https://docs.oracle.com/javase/tutorial/uiswing/events/