用java来写一个猜数字游戏,要用到界面
那个点开始之后要让开始市区作用最好是让它变成灰色,不能点击,还有就是那个可以告诉运行者猜大了还是猜小了,图形与图差不多就行麻烦大家了!最好可以告诉我一下怎么做的!!...
那个点开始之后要让开始市区作用最好是让它变成灰色,不能点击,还有就是那个可以告诉运行者猜大了还是猜小了,图形与图差不多就行
麻烦大家了!最好可以告诉我一下怎么做的!! 展开
麻烦大家了!最好可以告诉我一下怎么做的!! 展开
3个回答
展开全部
package p1;
import java.awt.Color;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.WindowConstants;
public class MyFrame extends JFrame
{
private static final long serialVersionUID = 1L;
int random = 0;
public static void main ( String[] args )
{
new MyFrame ();
}
public MyFrame ()
{
Container container = getContentPane ();
container.setLayout (new BoxLayout (container, BoxLayout.Y_AXIS | BoxLayout.LINE_AXIS));
container.setBackground (Color.pink);
setDefaultCloseOperation (WindowConstants.EXIT_ON_CLOSE);
setSize (300, 200);
setLocationRelativeTo (null);
setResizable (false);
setTitle ("输入1到10的数字猜");
JPanel p = new JPanel ();
final JTextField jtf = new JTextField (20);
jtf.setToolTipText ("输入1到10的数字猜");
p.add (jtf);
container.add (p);
JPanel panel = new JPanel ();
final JButton bl = new JButton ("开始");
bl.addActionListener (new ActionListener ()
{
public void actionPerformed ( ActionEvent e )
{
random = (int) ( Math.random () * 10 + 1 );
bl.setEnabled (false);
}
});
panel.add (bl);
JButton bl1 = new JButton ("确定");
bl1.addActionListener (new ActionListener ()
{
public void actionPerformed ( ActionEvent e )
{
String num = jtf.getText ().trim ();
if (!num.matches ("^[1-9]|10$"))
{
JOptionPane.showConfirmDialog (null, "请填入一个 1~10 的整数 !", "友情提示", JOptionPane.CLOSED_OPTION,
JOptionPane.ERROR_MESSAGE);
}
else
{
if (random == Integer.parseInt (num))
{
JOptionPane.showConfirmDialog (null, "恭喜你,猜对了 !", "友情提示", JOptionPane.CLOSED_OPTION,
JOptionPane.INFORMATION_MESSAGE);
}
else
{
JOptionPane.showConfirmDialog (null, "很遗憾,你猜错了 ! 随机数是:" + random, "友情提示",
JOptionPane.CLOSED_OPTION, JOptionPane.WARNING_MESSAGE);
}
}
jtf.requestFocus ();
bl.setEnabled (true);
}
});
panel.add (bl1);
JButton bl2 = new JButton ("退出");
bl2.addActionListener (new ActionListener ()
{
public void actionPerformed ( ActionEvent e )
{
System.exit (0);
}
});
panel.add (bl2);
container.add (panel);
JLabel jl = new JLabel ();
container.add (jl);
setVisible (true);
}
}
更多追问追答
追问
那个怎么改成数字是100-1000??
追答
推荐于2017-09-26 · 知道合伙人互联网行家
关注
展开全部
java实现的简单猜数字游戏代码,通过随机数与逻辑判断来实现游戏功能
代码如下:
import java.util.InputMismatchException;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// 产生一个随机数
int number = (int) (Math.random() * 100) + 1;
// 加入count
int count = 0;
// 在这里加入最大值,和最小值
int max = 100;
int min = 1;
while (true) {
// 键盘录入数据
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要猜的数据:(" + min + "~" + max + ")");
try {
count++;
int guessNumber = sc.nextInt();
// 判断
if (guessNumber > number) {
max = guessNumber;
System.out.println("你猜大了");
} else if (guessNumber < number) {
min = guessNumber;
System.out.println("你猜小了");
} else {
System.out.println("恭喜你,花了" + count + "次就猜中了");
// 问是否继续
System.out.println("请问还要继续吗?(yes)");
sc = new Scanner(System.in);
String str = sc.nextLine();
if ("yes".equals(str)) {
// 重写赋值随机数
number = (int) (Math.random() * 100) + 1;
count = 0;
max = 100;
min = 1;
} else {
break;
}
}
} catch (InputMismatchException e) {
System.out.println("你输入的数据有误");
}
}
}
}
代码如下:
import java.util.InputMismatchException;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// 产生一个随机数
int number = (int) (Math.random() * 100) + 1;
// 加入count
int count = 0;
// 在这里加入最大值,和最小值
int max = 100;
int min = 1;
while (true) {
// 键盘录入数据
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要猜的数据:(" + min + "~" + max + ")");
try {
count++;
int guessNumber = sc.nextInt();
// 判断
if (guessNumber > number) {
max = guessNumber;
System.out.println("你猜大了");
} else if (guessNumber < number) {
min = guessNumber;
System.out.println("你猜小了");
} else {
System.out.println("恭喜你,花了" + count + "次就猜中了");
// 问是否继续
System.out.println("请问还要继续吗?(yes)");
sc = new Scanner(System.in);
String str = sc.nextLine();
if ("yes".equals(str)) {
// 重写赋值随机数
number = (int) (Math.random() * 100) + 1;
count = 0;
max = 100;
min = 1;
} else {
break;
}
}
} catch (InputMismatchException e) {
System.out.println("你输入的数据有误");
}
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这是我以前帮别人做的一个猜数字游戏,你可以借鉴一下。主要思路是,先用Random产生一个随机数,然后然 用户输入值,点击确定后,取文本框的值去和随机数进行对比,然后给出相应的提示(大或者小),按钮开始变成灰色就是设置是否点击,应该有个setdisable方法,传一个false进去就可以。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询