初学java写的第一个swing小程序 猜数字游戏
package com.newer.ui;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.*;
public class GuessNumber extends JFrame implements ActionListener{
private JPanel bottonPanel;
private JPanel middlePanel;
private JPanel topPanel;
private JLabel lblTitle;
private JLabel lblMessage;
private JTextField txtTitle;
private JButton btnGuess;
private JButton btnRestart;
private Random ran;
private int ranNumber;
public GuessNumber(){
Restarts();
createRand();
init();
this.setVisible(true);
}
//产生随即数
private void createRand(){
if(ran == null){
ran = new Random();
}
ranNumber = ran.nextInt(100)+1;
}
public void Restarts(){
createRand();
}
public void getNumber(){
try{
int number = Integer.parseInt(txtTitle.getText());
String message="";
if(number>ranNumber){
message = "大了";
}
if(number<ranNumber){
message = "小了";
}
if(number == ranNumber){
message = "恭喜答对了";
}
lblMessage.setText(message);
}catch(Exception e){
JOptionPane.showMessageDialog(null, "请输入正确的数!");
}
}
public void init(){
this.setSize(400,300);
this.setLocationRelativeTo(this);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setTitle("猜 数 游 戏");
this.setResizable(false);
Container c=this.getContentPane();//设置面板
c.setLayout(new BorderLayout());
c.setBackground(Color.CYAN);
//顶部面板
topPanel = new JPanel();
topPanel.setBackground(Color.CYAN);
topPanel.setLayout(new FlowLayout());
lblTitle = new JLabel("请输入你要猜的数:");
txtTitle = new JTextField();
txtTitle.setColumns(10);
topPanel.add(lblTitle);
topPanel.add(txtTitle);
//设置中间面板
middlePanel = new JPanel();
middlePanel.setBackground(Color.CYAN);
middlePanel.setLayout(new FlowLayout());
lblMessage = new JLabel("提示");
middlePanel.add(lblMessage);
//设置底部面板
bottonPanel = new JPanel();
bottonPanel.setBackground(Color.CYAN);
bottonPanel.setLayout(new FlowLayout());
btnGuess = new JButton("猜测");
btnGuess.addActionListener(this);//注册监听
btnGuess.setActionCommand("guess");//设置暗号
btnRestart = new JButton("重新开始");
btnRestart.addActionListener(this);//注册监听
btnRestart.setActionCommand("guessRestart");
bottonPanel.add(btnGuess);
bottonPanel.add(btnRestart);
//把三个Panel面板加入主面板
c.add(topPanel,BorderLayout.NORTH);
c.add(middlePanel,BorderLayout.CENTER);
c.add(bottonPanel,BorderLayout.SOUTH);
}
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
//1.获取文本框的猜测数字
//2、猜测数字和随机数比较,得到信息
//3.将信息放到提示标签中
//获得暗号
if(e.getActionCommand().equals("guess")){
getNumber();
}
if(e.getActionCommand().equals("guessRestart")){
txtTitle.setText("");
lblMessage.setText("提示");
Restarts();
}
}
}
分享到:
相关推荐
【winform猜数字游戏】是基于Visual Studio(VS)开发环境,使用C#编程语言实现的一个小型桌面应用程序。Winform是.NET Framework中的Windows应用程序开发框架,它为开发者提供了创建具有图形用户界面(GUI)的应用...
【C语言猜数字游戏代码】是一个经典的编程练习项目,它能帮助初学者更好地理解C语言的基本语法、控制结构以及函数的使用。在这个游戏中,计算机随机生成一个数字,玩家需要通过输入猜测这个数字,然后程序会根据玩家...
本人基于以前安卓手机玩猜数字的游戏的经验,基于Matlab的GUI界面开发了程序,可完美实现此功能,程序包括3个文件,1个fig文件和2个m文件,可完美运行。 下面简介一下猜数字游戏的玩法: 1.点击“开始游戏”,随机...
【猜数字游戏实验报告】 本实验报告主要围绕一个基于C++的猜数字游戏进行,旨在锻炼学生的编程能力和逻辑思维。游戏的基本流程是计算机生成一个随机数,玩家通过一系列提示逐步猜出这个数字。以下是该实验的详细...
在Java编程世界中,猜数字游戏是一个经典的入门项目,它能帮助初学者更好地理解控制流程、条件判断和随机数生成等基本概念。本教程将详细探讨如何使用Java编写一个简单的猜数字游戏,并涉及JSTL(JavaServer Pages ...
《猜数字游戏实验报告》详述了一款基于VC++实现的猜数字游戏的开发过程,该实验旨在训练学生的编程能力和逻辑思维。以下是该实验报告的关键知识点: 1. **随机数生成**:游戏的核心是计算机生成一个随机数供玩家...
在这个“微信小程序——猜数字游戏”项目中,我们将会探讨微信小程序开发的一些核心技术和实现策略。 首先,我们要了解小程序的基本结构。微信小程序由多个页面构成,每个页面包括wxml(结构层)和wxss(样式层)...
猜数字游戏。要求: //编写一个Java应用程序,实现下列功能: //1) 程序随机分配给客户一个1—100之间的整数 //2) 用户在输入对话框中输入自己的猜测 //3) 程序返回提示信息,提示信息分别是:“猜大了”、“猜...
根据给定的信息,我们可以分析并总结出以下与C语言猜数字游戏相关的知识点: ### C语言猜数字游戏概览 此程序实现了一个简单的猜数字游戏,玩家需要猜测由计算机随机生成的一个四位数字。游戏规则是这样的:如果...