求高手解决一下,用java做一个下面的程序

通过按钮产生1~100之间的随机数,然后再输入文本框中,随机输入数字,单击确定后,上方提示文本框中提示猜大了,还是猜小了。根据提示,不断输入猜的数字,直到猜对。... 通过按钮产生1~100之间的随机数,然后再输入文本框中,随机输入数字,单击确定后,上方提示文本框中提示猜大了,还是猜小了。根据提示,不断输入猜的数字,直到猜对。 展开
 我来答
百度网友37397c621
2013-05-20 · TA获得超过695个赞
知道小有建树答主
回答量:427
采纳率:100%
帮助的人:148万
展开全部
你可以自己看着修改下:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.util.*;
class gameFrame extends JFrame {
    int i = 9; // 记录剩余的猜数字次数
    int n = new Random().nextInt(900) + 100;
    JMenuBar menu = new JMenuBar(); // 菜单栏
    JMenu f = new JMenu("文件"); // 菜单项
    JMenu he = new JMenu("帮助"); // 菜单项
    JMenuItem quit = new JMenuItem("退出"); // 菜单选项
    JMenuItem about = new JMenuItem("关于..."); // 菜单选项
    JPanel in = new JPanel(new GridLayout(1, 4)); // 输入文本框所在行面板,hp,tfin,buttonArea将加入此面板
    JPanel hp = new JPanel(new BorderLayout()); // 标签 help 将加入此面板;此面板将加入 in 面板
    JLabel help = new JLabel("请输入100~1000之间的数字:"); // 输入框前面的提示文本
    JPanel tfin = new JPanel(new BorderLayout()); // 输入框将加入此面板,“确定”
                                                    // 按钮将加入此面板;此面板将加入 in 面板
    JTextField input = new JTextField(); // 输入框
    JButton ensure = new JButton("确定"); // 确定输入按钮
    JPanel buttonsArea = new JPanel(new GridLayout(1, 2)); // 按键区(答案,重玩),此面板将加入
                                                            // in 面板
    JPanel re = new JPanel(new BorderLayout()); // 重玩按钮区,repeat 按钮将加入此面板
    JButton repeat = new JButton("重玩"); // 重玩按钮
    JPanel an = new JPanel(new BorderLayout()); // answer 按钮区
    JButton answer = new JButton("答案"); // answer 按钮
    JTextArea a = new JTextArea(); // 提示文本显示区域
    JPanel p = new JPanel(new BorderLayout()); // 文本域面板
    gameFrame() { // 构造方法
        // help.setAlignment(Label.RIGHT);
        hp.add(help, BorderLayout.CENTER);
        tfin.add(input, BorderLayout.CENTER);
        tfin.add(ensure, BorderLayout.EAST);
        re.add(repeat, BorderLayout.CENTER);
        re.add(new JLabel(" "), BorderLayout.WEST);
        an.add(answer, BorderLayout.CENTER);
        an.add(new JLabel(" "), BorderLayout.WEST);
        buttonsArea.add(re);
        buttonsArea.add(an);
        in.add(hp);
        in.add(tfin);
        in.add(buttonsArea);
        this.add(in, BorderLayout.NORTH);
        a.setEditable(false);
        a.setLineWrap(true);
        a.setWrapStyleWord(true);
        a.setFont(new Font("font1", Font.BOLD, 15));
        p.add(new JScrollPane(a));
        // jsb.add(a);
        // jsb.setOrientation(JScrollBar.VERTICAL);
        this.add(p, BorderLayout.CENTER);
        f.add(quit);
        menu.add(f);
        he.add(about);
        menu.add(he);
        this.setJMenuBar(menu);
        input.addActionListener(new MyMonitor());
        ensure.addActionListener(new MyMonitor());
        repeat.addActionListener(new MyMonitor2());
        answer.addActionListener(new MyMonitor3());
        quit.addActionListener(new MyMonitor1());
        about.addActionListener(new MyMonitor4());
        this.addWindowListener(new MyWindowMonitor());
        this.setBounds(400, 200, 550, 450);
        this.setResizable(false);
        this.setTitle("来,我们猜数字吧!");
        this.setVisible(true);
    }
    class MyWindowMonitor extends WindowAdapter { // X 监听器
        public void windowClosing(WindowEvent e) {
            setVisible(false);
            System.exit(0);
        }
    }
    class MyMonitor1 implements ActionListener { // quit 退出菜单项监听器
        public void actionPerformed(ActionEvent ex) {
            System.exit(0);
        }
    }
    class MyMonitor2 implements ActionListener { // repeat 重玩按钮监听器
        public void actionPerformed(ActionEvent ex1) {
            i = 9;
            a.setText("");
            n = new Random().nextInt(900) + 100;
        }
    }
    class MyMonitor3 implements ActionListener { // answer 按钮监听器
        public void actionPerformed(ActionEvent ex2) {
            String str1 = new String("正确答案是:" + n);
            a.append(str1 + "\n");
        }
    }
    class MyMonitor4 implements ActionListener { // 关于菜单项监听器
        public void actionPerformed(ActionEvent ex3) {
            JTextArea jta = new JTextArea();
            jta.setText("此游戏版权归singsong所有,你可以玩此游戏,但由此游戏带来的一切后果,"
            + "由玩家自负。\n游戏规则:\n您有10次猜数字的机会,每次你可以输入100~1000之间的任意数值,按ENTER"
            + "或点击确认按钮,确认输入。\n点击“答案”按钮可以显示答案。\n一轮游戏结束后,可以点击“重玩”按钮进入新一轮游戏!\n"
            + "祝您游戏愉快!");
            jta.setLineWrap(true);
            jta.setWrapStyleWord(true);
            jta.setEditable(false);
            jta.setFont(new Font("font2", Font.TRUETYPE_FONT, 15));
            // jta.setFont(new Font("font1",Font.BOLD,15));
            JDialog jd = new JDialog();
            jd.setTitle("帮助");
            jd.add(jta);
            setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
            jd.setBounds(450, 300, 450, 300);
            jd.setResizable(false);
            jd.setVisible(true);
        }
    }
    class MyMonitor implements ActionListener { // 确定按钮监听器
        public int n1;
        public void actionPerformed(ActionEvent e) {
            if (i == -1) {
                a.append("还要继续,请点击“重玩”按钮!\n");
                input.setText("");
            }
            else {
                String str = input.getText();
                input.setText("");
                a.append(str + "\n");
                try {
                    n1 = Integer.parseInt(str);
                } catch (NumberFormatException e1) {
                    n1 = -1;
                }
                if (n1 < 100 || n1 > 1000) {
                    a.append("无效输入!请重 新输入吧!\n");
                }
                else if (n1 == n) {
                    a.append("恭喜你猜对了!\n");
                    i = -1;
                    a.append("还要继续,请点击“重玩”按钮!\n");
                } else if (n1 > n) {
                    if (i == 0) {
                        String s = new String("大了!很遗憾你没能猜对!\n还要继续,请点击“重玩”按钮!\n");
                        a.append(s);
                        i--;
                    } else {
                        String s = new String("大了! 你还有" + i + "次机会!\n");
                        a.append(s);
                        i--;
                    }
                } else if (n1 < n) {
                    if (i == 0) {
                        String s = new String("小了!很遗憾你没能猜对!\n还要继续,请点击“重玩”按钮!\n");
                        a.append(s);
                        i--;
                    } else {
                        String s = new String("小了!你还有" + i + "次机会!\n");
                        a.append(s);
                        i--;
                    }
                }
            }
        }
    }
}
public class Game {
    public static void main(String args[]) {
        gameFrame g = new gameFrame();
    }
}
bugdhero
2013-05-20
知道答主
回答量:33
采纳率:0%
帮助的人:15.3万
展开全部
用java的awt?我做java两年了,没用过java写这玩意,这东西也就js写写玩玩。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bd9006
2013-05-20 · TA获得超过2.5万个赞
知道大有可为答主
回答量:4.8万
采纳率:63%
帮助的人:1.6亿
展开全部
写得不错了,加油!

颜色、字体可以适当调整一下。
追问
这是VB做的,我要java做的
追答
差不多嘛,只不过组件名称换了、事件触发的方法换了,一些语法不同了。逻辑还是相似的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
iceraine
2013-05-20 · 超过16用户采纳过TA的回答
知道答主
回答量:85
采纳率:0%
帮助的人:45.5万
展开全部
这么简单的程序还是自己学着做吧
更多追问追答
追问
这是VB做的,我要java做的
追答
不管用什么语言做都很简单。一个超级简单的界面加一个超级简单的逻辑。。。随便找本java书都能找到示例。而且你如果是在学习java的话,最好自己动手去做一下,最最基本的东西都不愿意亲手做的话你修的java课程很可能不及格哟~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式