java 猜数字小游戏

110 篇文章 6 订阅

GuessNum:

package 猜数字1;
public class GuessNum {
	public static void main(String args[]){
		BuildWindow win=new BuildWindow("猜数字");
	}
}

BuildWindow:

package 猜数字1;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class BuildWindow extends JFrame{
	static JButton guessButton;//为了能够在PoliceListener内e.getSource调用它
	static JButton enterButton;//百度好久才找到
	static JLabel result;//
	JTextField showText;
	PoliceListener listener;
	public BuildWindow(String s){
		init();
		setVisible(true);
		setBounds(100,100,260,160);
		setTitle(s);
		validate();
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
	void init(){
		setLayout(new FlowLayout());
		guessButton = new JButton("获取随机数");
		add(guessButton);
		result = new JLabel("lala");
		add(result);
		result.setBackground(Color.blue);
		showText = new JTextField(10);
		add(showText);
		enterButton = new JButton("确定");
		add(enterButton);
		listener=new PoliceListener();//第一次忘记了。。结果不出现结果。找了好久
		guessButton.addActionListener(listener);
		enterButton.addActionListener(listener);
		listener.setJTextField(showText);
	}
}
PoliceListener:

package 猜数字1;
import javax.swing.*;
import java.awt.event.*;
public class PoliceListener implements ActionListener{
	int num;
	JTextField showText;
	public void setJTextField(JTextField text){
		showText=text;
	}
	public void actionPerformed (ActionEvent e){
		if(e.getSource()==BuildWindow.guessButton){
			num=(int)(Math.random()*100)+1;
			BuildWindow.result.setText("输入你的猜测(1-100)");
		}
		else if(e.getSource()==BuildWindow.enterButton){
			int guess;
			try{	guess=Integer.parseInt(showText.getText());
					if(guess==num){
						BuildWindow.result.setText("猜对了!");
					}
					else if(guess>num){
						BuildWindow.result.setText("猜大了");
					}
					else if(guess<num){
						BuildWindow.result.setText("猜小了");
					}
			}
			catch(NumberFormatException event){
				BuildWindow.result.setText("请输入数字字符");
			}
		}
	}
}

这是运行结果 不知道这叫不叫可视化。。哈哈胡说的 莫怪

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值