java实现简单猜数字

 更新时间:2020年05月16日 09:13:50   作者:纳兰那些事儿  
这篇文章主要为大家详细介绍了java实现简单猜数字,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了java实现简单猜数字的具体代码,供大家参考,具体内容如下

代码不多说,图片自加,实现功能有数字比大小,菜单开始,帮助,退出,关于等,运行结果如图:

代码:

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class Bingo extends JFrame implements ActionListener {
JFrame frame;
JMenuBar topBbr;
JMenu menuQ;
JMenu menuF;
JMenuItem start = new JMenuItem("开始(n)");
JMenuItem out = new JMenuItem("不玩了(e)");
JMenuItem help = new JMenuItem("帮助(h)");
JMenuItem about = new JMenuItem("关于(a)");
JPanel panelMain = new JPanel(new BorderLayout());
JPanel panelNext = new JPanel(new BorderLayout());
JButton btnStart;
JPanel jp1, jp2, jp3, jp4;

public static void main(String[] args) {
new Bingo();
}

public Bingo() {
frame = new JFrame();
topBbr = new JMenuBar();
frame.setTitle("王氏猜数字游戏1.0版");
frame.setSize(400, 320);
frame.setLocation(450, 240);
frame.setLayout(getLayout());
// frame.setLayout(new FlowLayout());
menuQ = new JMenu("游戏(q)");
menuQ.add(start);
menuQ.add(out);
menuF = new JMenu("帮助(f)");
ImageIcon icon = new ImageIcon("imgs/logo.jpg");
btnStart = new JButton(icon);
JButton caiButton = new JButton("猜一猜");
JButton congButton = new JButton("重新来");
JTextField text = new JTextField(6);
JLabel mes = new JLabel("  请你输入一个2位数");
menuF.add(help);
menuF.add(about);
topBbr.add(menuQ);
topBbr.add(menuF);
frame.setJMenuBar(topBbr);
panelMain.add("Center", btnStart);
frame.add(panelMain);
frame.setResizable(false);
frame.setVisible(true);
// Image im = new ImageIcon("imgs/logo.jpg").getImage();
// im = im.getScaledInstance(-1, 90, DO_NOTHING_ON_CLOSE);
// setIconImage(im);
start.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
panelMain.setVisible(false);
start.setEnabled(false);
frame.add(panelNext);
jp1 = new JPanel();
jp2 = new JPanel(new GridLayout(2, 1));
jp3 = new JPanel();
JLabel top = new JLabel("??");
// top.setBackground(new Color(100, 100, 0, 100));
// top.setOpaque(true);
JLabel jb = new JLabel(" ");
JLabel jb2 = new JLabel(
" ");
top.setFont(new Font("隶体", Font.BOLD, 100));
top.setForeground(Color.yellow);
jp1.add(top);
jp2.add(mes);
jp2.add(text);
jp3.add(caiButton);
jp3.add(congButton);
panelNext.add("North", jp1);
panelNext.add("Center", jp2);
panelNext.add("West", jb);
panelNext.add("East", jb2);
panelNext.add("South", jp3);
panelNext.setVisible(true);
}
});
// 开始监听1
btnStart.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
start.setEnabled(false);
panelMain.setVisible(false);
frame.add(panelNext);
jp1 = new JPanel();
jp2 = new JPanel(new GridLayout(2, 1));
jp3 = new JPanel();
JLabel top = new JLabel("??");
// top.setBackground(new Color(100, 100, 0, 100));
// top.setOpaque(true);
JLabel jb = new JLabel("     ");
JLabel jb2 = new JLabel("     ");
top.setFont(new Font("隶体", Font.BOLD, 100));
top.setForeground(Color.yellow);
jp1.add(top);
jp2.add(mes);
jp2.add(text);
jp3.add(caiButton);
jp3.add(congButton);
panelNext.add("North", jp1);
panelNext.add("Center", jp2);
panelNext.add("West", jb);
panelNext.add("East", jb2);
panelNext.add("South", jp3);
panelNext.setVisible(true);
}
});
// 退出监听
out.addActionListener(new ActionListener() {

@Override
public void actionPerformed(ActionEvent e) {
frame.setVisible(false);

}
});
// 帮助监听
help.addActionListener(new ActionListener() {

@Override
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "请按开始进行游戏!就是猜数字而已,就不多说了!",
"帮助", JOptionPane.PLAIN_MESSAGE);
}
});
// 关于监听
about.addActionListener(new ActionListener() {

@Override
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(frame, "谢谢尝脸试玩!", "3Q",
JOptionPane.WARNING_MESSAGE);
}
});
// 开始监听2
caiButton.addActionListener(new ActionListener() {

@Override
public void actionPerformed(ActionEvent e) {
Random x = new Random();
int y = x.nextInt(100);
try {
int num = Integer.parseInt(text.getText());
if (num > y) {
mes.setText("  你输入的" + num + "大了哦!");
if (num > 99) {
mes.setText("  请输入小于99的数字!");
}
}else if(num == y){
mes.setText("  恭喜你猜对了哦!");
} 
else{
mes.setText("  你输入的" + num + "小了哦!");
if (num < 1) {
mes.setText("  请输入大于0的数字!");
}
} 
} catch (Exception e2) {
mes.setText("  请输入0-99的数字!");
}
}
});
// 重置监听
congButton.addActionListener(new ActionListener() {

@Override
public void actionPerformed(ActionEvent e) {
text.setText("");
}
});

}

@Override
public void actionPerformed(ActionEvent e) {
}
}

更多有趣的经典小游戏实现专题,也分享给大家:

C++经典小游戏汇总

python经典小游戏汇总

python俄罗斯方块游戏集合

JavaScript经典游戏 玩不停

java经典小游戏汇总

javascript经典小游戏汇总

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 微信小程序 navigator 跳转url传递参数

    微信小程序 navigator 跳转url传递参数

    这篇文章主要介绍了 微信小程序 navigator 跳转url传递参数的相关资料,需要的朋友可以参考下
    2017-03-03
  • java判断一个文件是否为二进制文件的方法

    java判断一个文件是否为二进制文件的方法

    这篇文章主要介绍了java判断一个文件是否为二进制文件的方法,涉及java针对文件的读取及编码判断技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • Spring源码学习之动态代理实现流程

    Spring源码学习之动态代理实现流程

    这篇文章主要给大家介绍了关于Spring源码学习之动态代理实现流程的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • 玩转SpringBoot2快速整合拦截器的方法

    玩转SpringBoot2快速整合拦截器的方法

    这篇文章主要介绍了玩转SpringBoot2快速整合拦截器的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • 浅谈Java编程中string的理解与运用

    浅谈Java编程中string的理解与运用

    这篇文章主要介绍了浅谈Java编程中string的理解与运用,还是比较不错的,这里分享给大家,供需要的朋友参考。
    2017-11-11
  • 逆波兰计算器(Java实现)

    逆波兰计算器(Java实现)

    这篇文章主要为大家详细介绍了Java实现逆波兰计算器,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • 平衡二叉树的左右旋以及双旋转的图文详解

    平衡二叉树的左右旋以及双旋转的图文详解

    今天小编就为大家分享一篇关于平衡二叉树的左右旋以及双旋转的图文详解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • java查找图中两点之间所有路径

    java查找图中两点之间所有路径

    这篇文章主要为大家详细介绍了java查找图中两点之间所有路径,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • java中struts 框架的实现

    java中struts 框架的实现

    本文给大家介绍的是java中struts 框架的实现,有需要的小伙伴可以参考下。
    2015-06-06
  • 实例解析Java单例模式编程中对抽象工厂模式的运用

    实例解析Java单例模式编程中对抽象工厂模式的运用

    这篇文章主要介绍了实例解析Java单例模式编程中对抽象工厂模式的运用,抽象工厂模式可以看作是工厂方法模式的升级版,本需要的朋友可以参考下
    2016-02-02

最新评论