哪位高手帮我看一下这个java小程序怎么改

importjava.util.*;//导入实用包util下所有的类importjavax.swing.*;importjava.awt.*;importjava.awt... import java.util.*;
//导入实用包util下所有的类
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class CaiShu {
public static void main(String[] args) {
Win f = new Win();
f.setVisible(true);
}
}

class Win extends JFrame implements ActionListener {
JLabel labe;
JButton butt;
Random a = new Random();
private int i = 0;
private int num;

JTextField text1, text2;

JPanel p;

Win() {
super("猜数游戏");
labe = new JLabel("我心里有个数,它是1---100之间的,你能猜出来吗?");
butt = new JButton("确认");
text1 = new JTextField(5);
text2 = new JTextField(20);

p = new JPanel();
Container con = getContentPane();
//调用JFrame的getContentPane得到容器
text2.setEditable(false);
//使输出结果文本域不可编辑
butt.addActionListener(this);
//执行结果动作
con.setLayout(new GridLayout(4, 1));
//设置整个界面的长宽比
p.add(text1);
//添加输入数字文本域
p.add(butt);
con.add(labe);
//添加游戏标签
con.add(p);
con.add(text2);
//添加输出结果信息文本域

setSize(300, 300);
//设置窗口尺寸
setVisible(true);
//设置窗口可视
pack();
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
setVisible(false);
System.exit(0);
}
});

}

public void actionPerformed(ActionEvent e) {
int shu;
while (true) {
shu = Integer.parseInt(text1.getText());

if(i==0)
{
num = a.nextInt(100);
}
i++;
if (i == 10) {
text2.setText("结束吧,你没有希望了!!");
i = 0;
break;
}

if (e.getSource() == butt) {
if (shu > num) {
text2.setText("输入的数大了,输小点的!");
} else if (shu < num) {
text2.setText("输入的数小了,输大点的!");
} else if (shu == num) {
text2.setText("恭喜你,猜对了!");
if (i <= 2)
text2.setText("你真是个天才!");
else if (i <= 6)
text2.setText("还将就,你过关了!");
else if (i <= 8)
text2.setText("但是你还……真笨!");
else
text2.setText("你实在是太笨了!");
}
break;
}
}
}
}
运行是可以的,但是每次都要重新关闭窗口再打开,才能玩下一次,怎么样可以改变一下
展开
 我来答
peizhengwen
2008-07-12 · TA获得超过1216个赞
知道小有建树答主
回答量:388
采纳率:0%
帮助的人:244万
展开全部
import java.util.*; //导入实用包util下所有的类
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class CaiShu {
public static void main(String[] args) {
Win f = new Win();
f.setVisible(true);
}
}

class Win extends JFrame implements ActionListener {
JLabel labe;
JButton butt;
JButton button;
Random a = new Random();
private int i = 0;
private int num;

JTextField text1, text2;

JPanel p;

public Win() {
super("猜数游戏");
labe = new JLabel("我心里有个数,它是1---100之间的,你能猜出来吗?");
butt = new JButton("确认");
button = new JButton("重开");
text1 = new JTextField(5);
text2 = new JTextField(20);

p = new JPanel();
Container con = getContentPane();
// 调用JFrame的getContentPane得到容器
text2.setEditable(false);
// 使输出结果文本域不可编辑
butt.addActionListener(this);
// 执行结果动作
con.setLayout(new GridLayout(4, 1));
// 设置整个界面的长宽比
p.add(text1);
// 添加输入数字文本域
p.add(butt);
p.add(button);
button.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
text1.setText("");
text2.setText("");
i=0;
}
});
con.add(labe);
// 添加游戏标签
con.add(p);
con.add(text2);
// 添加输出结果信息文本域

setSize(300, 300);
// 设置窗口尺寸
setVisible(true);
// 设置窗口可视
pack();
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
setVisible(false);
System.exit(0);
}
});

}

public void actionPerformed(ActionEvent e) {
int shu;
while (true) {
shu = Integer.parseInt(text1.getText());

if (i == 0) {
num = a.nextInt(100);
}
i++;
if (i == 10) {
text2.setText("结束吧,你没有希望了!!");
i = 0;
break;
}

if (e.getSource() == butt) {
if (shu > num) {
text2.setText("输入的数大了,输小点的!");
} else if (shu < num) {
text2.setText("输入的数小了,输大点的!");
} else if (shu == num) {
text2.setText("恭喜你,猜对了!");
if (i <= 2)
text2.setText("你真是个天才!");
else if (i <= 6)
text2.setText("还将就,你过关了!");
else if (i <= 8)
text2.setText("但是你还……真笨!");
else
text2.setText("你实在是太笨了!");
}
break;
}
}
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式