资源简介
上班闲着无聊做了一个JAVA版的GUI计时器,包括了中午的打卡时间、下午的下班时间、周末的倒计时和当天已加班的时间。后续又整合了国内各个能放假的节日倒计时(包括春节、中秋等农历节日)。最后 实在是闲着没事 做了贪吃蛇和扫雷两款小游戏整合到里面 闲着没事 打发打发时间 有兴趣的可以拿去参考参考
代码片段和文件信息
package com.yf.ui;
import java.awt.Color;
import java.awt.Container;
import java.awt.GridLayout;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
import javax.swing.JButton;
import javax.swing.Jframe;
import javax.swing.JOptionPane;
public class Mine implements ActionListener {
Jframe frame = new Jframe(“扫雷“);
JButton reset = new JButton(“重新开始“);
Container container = new Container();
// 游戏数据结构
int rowG = 20;
int colG = 20;
int leiCountG = 50;
JButton[][] buttons = new JButton[rowG][colG];
int[][] counts = new int[rowG][colG];
final int LEICODE = 99;
// 构造函数
/**
* @wbp.parser.entryPoint
*/
public Mine() {
// 1、设置窗口
frame.setSize(900 800);
frame.setResizable(false);// 是否可改变窗口大小
frame.setDefaultCloseOperation(Jframe.DISPOSE_ON_CLOSE);
Image img = Toolkit.getDefaultToolkit().getImage(“config/lei.jpg“);// 窗口图标
frame.setIconImage(img);
// 2、添加重来按钮
addResetButton();
// 添加按钮
addButtons();
// 埋雷
addLei();
// 添加雷的计算
calcNeiboLei();
frame.setVisible(true);
}
public void addResetButton() { //重来按钮
reset.setBounds(385 7 122 23);
reset.setOpaque(true);
reset.addActionListener(this);
frame.getContentPane().setLayout(null);
frame.getContentPane().add(reset);
}
public void addLei() { //添加雷
Random rand = new Random();
int randRow randCol;
for (int i = 0; i < leiCountG; i++) {
randRow = rand.nextInt(rowG);
randCol = rand.nextInt(colG);
if (counts[randRow][randCol] == LEICODE) {
i--;
} else {
counts[randRow][randCol] = LEICODE;
// buttons[randRow][randCol].setText(“*“);
}
}
}
public void addButtons() { //初始化界面
container.setBounds(10 36 874 725);
frame.getContentPane().add(container);
container.setLayout(new GridLayout(rowG colG));
for (int i = 0; i < rowG; i++) {
for (int j = 0; j < colG; j++) {
JButton button = new JButton();
button.setBackground(Color.GRAY);
button.setOpaque(true);
button.addActionListener(this);
buttons[i][j] = button;
container.add(button);
}
}
}
public void calcNeiboLei() {
int count;
for (int i = 0; i < rowG; i++) {
for (int j = 0; j < colG; j++) {
count = 0;
if (counts[i][j] == LEICODE)
continue;
if (i > 0 && j > 0 && counts[i - 1][j - 1] == LEICODE)
count++;
if (i > 0 && counts[i - 1][j] == LEICODE)
count++;
if (i > 0 && j < 19 && counts[i - 1][j + 1] == LEICODE)
count++;
if (j > 0 && counts[i][j - 1] == LEICODE)
count++;
if (j < 19 && counts[i][j + 1] == LEICODE)
count++;
if (i < 19 && j > 0 && counts[i + 1][j - 1] == LEICODE)
count++;
if (i < 19 && counts[i + 1][j] == LEICODE)
count++;
if (i < 19 && j < 19 && counts[i + 1][j + 1] == LEICODE)
count++;
counts[i][j] = count;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2779 2019-04-22 15:30 Timer\.classpath
文件 381 2019-04-22 15:30 Timer\.project
文件 57 2019-04-22 16:00 Timer\.settings\org.eclipse.core.resources.prefs
文件 598 2019-04-22 15:30 Timer\.settings\org.eclipse.jdt.core.prefs
文件 5715 2019-04-28 13:47 Timer\bin\com\yf\ui\Mine.class
文件 2308 2019-04-28 13:47 Timer\bin\com\yf\ui\Snake$1.class
文件 2296 2019-04-28 13:47 Timer\bin\com\yf\ui\Snake$2.class
文件 1906 2019-04-28 13:47 Timer\bin\com\yf\ui\Snake$Timer.class
文件 9310 2019-04-28 13:47 Timer\bin\com\yf\ui\Snake.class
文件 366 2019-04-28 13:47 Timer\bin\com\yf\ui\Tile.class
文件 869 2019-04-28 13:47 Timer\bin\com\yf\ui\TimerApplication$1.class
文件 733 2019-04-28 13:47 Timer\bin\com\yf\ui\TimerApplication$2.class
文件 1197 2019-04-28 13:47 Timer\bin\com\yf\ui\TimerApplication$3.class
文件 1197 2019-04-28 13:47 Timer\bin\com\yf\ui\TimerApplication$4.class
文件 1197 2019-04-28 13:47 Timer\bin\com\yf\ui\TimerApplication$5.class
文件 1197 2019-04-28 13:47 Timer\bin\com\yf\ui\TimerApplication$6.class
文件 850 2019-04-28 13:47 Timer\bin\com\yf\ui\TimerApplication$7$1.class
文件 1783 2019-04-28 13:47 Timer\bin\com\yf\ui\TimerApplication$7.class
文件 1892 2019-04-28 13:47 Timer\bin\com\yf\ui\TimerApplication$8.class
文件 1042 2019-04-28 13:47 Timer\bin\com\yf\ui\TimerApplication$9.class
文件 8315 2019-04-28 13:47 Timer\bin\com\yf\ui\TimerApplication.class
文件 2619 2019-04-28 13:47 Timer\bin\com\yf\util\AePlayWave.class
文件 363 2019-04-28 13:47 Timer\bin\com\yf\util\Lunar.class
文件 8617 2019-04-28 13:47 Timer\bin\com\yf\util\LunarSolarConverter.class
文件 342 2019-04-28 13:47 Timer\bin\com\yf\util\Solar.class
文件 8330 2019-04-30 16:28 Timer\bin\com\yf\util\TimerUtil.class
文件 12506 2019-04-23 14:30 Timer\config\eat.wav
文件 12858 2019-04-23 14:40 Timer\config\icon.jpg
文件 1561 2019-04-24 10:04 Timer\config\lei.jpg
文件 35402 2019-04-23 14:30 Timer\config\over.wav
............此处省略23个文件信息
相关资源
- java写的画板
- mysql-connector-java-5.1.40-bin.jar连接器
- java实现学生管理系统控制台
- Java实现-生成带参的小程序二维码
- JAVA 像素鸟游戏
- java超市收银系统
- java百度OCR文字识别名片信息补充
- java数据库编程,对数据库的一系列操
- 纯JavaSwing界面,小型人才资源管理系
- ValidateCode.jar包含用法,Java生成图片验
- 网络调试助手NetAssistjava socket通讯代码
- SMS4国密封装接口直接可用java.zip
- JSP + MySQL+Servlet+JavaBean 实现图片上传
- Mateix3x3f.java矩阵的Java实现
- Java投票系统
- 基于Java实现的socket即时通信系统
- 程序设计外文资料
- JavawebMVC模式用户登录程序源码
- 学生成绩管理系统java+mysql
- flappy birdjava版
- html5做超级玛丽游戏(儿时的回忆
- mysql-connector-java-3.1.12-bin.jar
- 基于java scoket的聊天工具开题报告
- 基于Java的医院分诊管理系统
- Java转C++代码工具 J2C
- JAVA期末考试试题
- jsp+javabean实现的简单的购物车 删除
- AESjava实现
- 用java编写的多边形扫描填充算法,有
- java二分查法
评论
共有 条评论