资源简介
JAVA课程大作业,程序随机产生20—50根火柴,由人与计算机轮流拿,每次拿的数量不超过3根,拿到最后一根为胜。(使用图形界面)。
代码片段和文件信息
package Count_Matches;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Timer;
import java.util.TimerTask;
import javax.swing.JButton;
import javax.swing.Jframe;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JOptionPane;
public class Matches extends Exception{
/**
*
*/
private static final long serialVersionUID = 1L;
private static final int Min_Matchs = 20; //定义一个常量,设置为最小火柴棍数量为20
private static final int Max_Matchs = 50; //定义一个常量,设置为最大火柴棍数量为50
private static final int MAX_TAKE = 3; //定义一个常量,设置为最大拿火柴数量为3
private static final int Delay = 100; //定义一个常量,设置为延迟时间为100
private Jframe frame; //定义主框架变量
private PaintPanel[] paints; //定义我自己画的面板数组变量
private JButton compBtn; //定义电脑按钮属性
private JButton start; //定义初始化按钮属性
private JButton back; //定义后退按钮属性
private JButton userBtn1; //定义玩家取一根火柴的按钮
private JButton userBtn2; //定义玩家取二根火柴的按钮
private JButton userBtn3; //玩家取三根火柴的按钮
private int takeCnt; //定义一个变量来统计上一次电脑拿的火柴数
private int count_u; //定义变量来统计上一次玩家拿的火柴数
private JLabel compText; //定义一个打印电脑拿的火柴数的标签
private Timer timer; //定义计时器变量
Matches() {
/*
* 定义一个构造方法,来完成游戏界面的初始化
*
*/
frame = new Jframe();//实例化一个主窗口
frame.setResizable(false);//规定大小不可变
frame.settitle(“班级 学号 姓名“);
frame.setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
JPanel mainPanel = new JPanel();//实例化一个主面板
mainPanel.setLayout(null);
mainPanel.setPreferredSize(new Dimension(800600)); //定义一个面板的大小
Font font = new java.awt.Font(“Dialog“ 1 25);//定义字体样式
frame.add(mainPanel);
JLabel label_C = new JLabel(“电脑“); //定义一个电脑标签
label_C.setFont(font);
label_C.setHorizontalAlignment(JLabel.CENTER);
label_C.setBounds(103017030);
mainPanel.add(label_C);
/*
* 定义初始化按钮的属性
*/
start = new JButton(“开始“);
start.addActionListener(new ActionListener() { //定义开始按钮的点击事件
//创建事件监听器
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
takeCnt = 0;
count_u = 0;
init();
compText.setText(““);
start.setToolTipText(“Press here will restart the game.“);
}
});
start.setToolTipText(“Press here will start the game.“);
start.setBounds(5901107030);
mainPanel.add(start);
JLabel label_P = new JLabel(“玩家“);
label_P.setHorizontalAlignment(JLabel.CENTER);
label_P.setBounds(5653020030);
label_P.setFont(font);
mainPanel.add(label_P);
compBtn = new JButton(“Computer First“); // 定义电脑先取的按钮
compBtn.addActionListener(new ActionListener() { //设置电脑先取按钮的点击事件
//创建事件监听器
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
compTake();
back.setEnabled(true);
}
});
compBtn.setBounds(257015030);
compBtn.setToolTipText(“Press here computer will pick up first!“);
mainPanel.add(compBtn);
compText =
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 622080 2019-01-24 12:08 Java课程大作业\Java课程大作业.doc
文件 301 2018-12-01 11:33 Java课程大作业\Matches\.classpath
文件 383 2018-12-12 13:47 Java课程大作业\Matches\.project
文件 598 2018-12-01 11:33 Java课程大作业\Matches\.settings\org.eclipse.jdt.core.prefs
文件 1111 2019-01-24 12:05 Java课程大作业\Matches\bin\Count_Matches\Matches$1.class
文件 819 2019-01-24 12:05 Java课程大作业\Matches\bin\Count_Matches\Matches$2.class
文件 982 2019-01-24 12:05 Java课程大作业\Matches\bin\Count_Matches\Matches$3.class
文件 982 2019-01-24 12:05 Java课程大作业\Matches\bin\Count_Matches\Matches$4.class
文件 982 2019-01-24 12:05 Java课程大作业\Matches\bin\Count_Matches\Matches$5.class
文件 1275 2019-01-24 12:05 Java课程大作业\Matches\bin\Count_Matches\Matches$6.class
文件 2080 2019-01-24 12:05 Java课程大作业\Matches\bin\Count_Matches\Matches$comTake.class
文件 1871 2019-01-24 12:05 Java课程大作业\Matches\bin\Count_Matches\Matches$userTake.class
文件 5736 2019-01-24 12:05 Java课程大作业\Matches\bin\Count_Matches\Matches.class
文件 597 2018-12-24 10:29 Java课程大作业\Matches\bin\Count_Matches\Matches_Main.class
文件 2477 2018-12-24 10:29 Java课程大作业\Matches\bin\Count_Matches\PaintPanel.class
文件 9223 2019-01-24 12:05 Java课程大作业\Matches\src\Count_Matches\Matches.java
文件 192 2018-12-12 13:48 Java课程大作业\Matches\src\Count_Matches\Matches_Main.java
文件 1970 2018-12-12 13:47 Java课程大作业\Matches\src\Count_Matches\PaintPanel.java
目录 0 2019-01-24 12:05 Java课程大作业\Matches\bin\Count_Matches
目录 0 2019-01-24 12:05 Java课程大作业\Matches\src\Count_Matches
目录 0 2019-01-24 12:05 Java课程大作业\Matches\.settings
目录 0 2019-01-24 12:05 Java课程大作业\Matches\bin
目录 0 2019-01-24 12:05 Java课程大作业\Matches\src
目录 0 2019-01-24 12:05 Java课程大作业\Matches
目录 0 2019-01-24 12:08 Java课程大作业
----------- --------- ---------- ----- ----
653659 25
- 上一篇:三角形问题JAVA.rar.rar
- 下一篇:推箱子源码及素材Java实现
相关资源
- 推箱子源码及素材Java实现
- 三角形问题JAVA.rar.rar
- 基于SQLsever2012的Java swing停车管理系统
- JavaWeb项目实战
- 简单的jdbc+mysql+jsp实现的增删改查
- jsp连接SQLserver数据库实现增删改查.这
- javax.jws-3.1.1-b01.jar
- java实现完整版猜拳小游戏
- Java课程设计医院门诊管理系统解压密
- javaweb课程教学网站基本的增删改查功
- 数据库课程设计,JAVA+数据库,图书管
- java应聘简历模板
- java文件管理系统
- java中返回layui数据表格的json格式的数
- Java开发,完整企业前端页面给后台开
- java动物识别系统
- rip协议 java实现
- 基于Java的饭店点餐系统
- 二手房数据库:JAVA+SQL Server
- 基于Java的SOSO移动大厅项目功能全部实
- Javaweb 图书管理系统教程
- Java接口自动化测试
- RS485电梯门禁控制器接口详情含JAVA代
- 腾讯通RTX,64位SDKAPIJAVA
- java项目—银行管理系统
- Java学生成绩管理系统.rar
- 航空客运订票系统JAVA课程设计
- java读取解析图书MARC数据iso文件
- javaweb学生选课系统课程设计
- 对称加密AES算法,前后端实现
评论
共有 条评论