package work;
import javax.swing.*;
import java.awt.event.*;
import java.util.*;
public class Guess extends JFrame implements ActionListener { //Guess继承JFrame类,继承 ActionListener接口;
private JLabel userlabel; //私有属性;
private JTextField usertext;
private Random random = new Random(); //调用Ramdom()方法,获取随机数;
public int m=(int)(Math.random()*100)+1;
public int n = 1;
public Guess() { //猜数游戏函数;
setTitle("GuessGame"); //设置文本框内容;
setLocation(500,400);
System.out.println("程序随机分配的值为:"+m);
getContentPane().setLayout(null);
userlabel = new JLabel("请输入一个猜想数(1-100):");
userlabel.setBounds(20, 20, 180, 40);//移动组件并调整其大小。由 x 和 y 指定左上角的新位置,由 width 和 height 指定新的大小。
usertext = new JTextField(10);
usertext.setBounds(100, 50, 150, 40);
getContentPane().add(userlabel); // contentPane 对象;
getContentPane().add(usertext);
usertext.addActionListener(this); // 添加指定的操作侦听器以从此文本字段接收操作事件;
setSize(350, 200); //设置大小;
setVisible(true);
//添加的代码
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
save.saveMandN(m, n);
System.exit(0);
}
});
}
public void actionPerformed(ActionEvent e) { //游戏内容;
int text = Integer.parseInt(usertext.getText());
if (n != 10) { //10次及以下;
if (text == m) {//当用户猜对时,根据所用次数不同,显示不同内容;
if(n == 1){
JOptionPane.showMessageDialog(null,n+"次就猜对了,你太有才了! 优秀");
save.saveMandN(m, n);
System.exit(0);
}
else if((n >=2) && (n<=6)){
JOptionPane.showMessageDialog(null,"猜了" + n +"次猜出来了,还不错哦! 良好");
save.saveMandN(m, n);
System.exit(0);
}
else if(n >6){
JOptionPane.showMessageDialog(null,"猜了" + n +"次才猜出来,尚需努力啊!合格");
save.saveMandN(m, n);
System.exit(0);
}
}
else if(text<1 || text>100)
JOptionPane.showMessageDialog(null, "输入数字非法哦!请重新输入一个1~100之间的数。");
else if (text < m) //对用户输入数据的提醒;
JOptionPane.showMessageDialog(null, "很遗憾!偏小了,请重新再猜。");
else if (text > m)
JOptionPane.showMessageDialog(null, "很遗憾!偏大了,请重新再猜。");
n++;
} else{
JOptionPane.showMessageDialog(null, "10次都猜不出来...,哼o( ̄ヘ ̄o#)不让你猜了"); //超过十次,自动结束游戏;
save.saveMandN(m, n);
System.exit(0);
}
}
public static void main(String[] args) {
Guess mathgame = new Guess();
mathgame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
一键复制
编辑
Web IDE
原始数据
按行查看
历史