/**

* @(#)fish.FishBean.java 2008-7-31

* Copy Right Information: Tarena

* Project: fish

* JDK version used: jdk1.6.4

* Comments: 豆豆类

* Version: 1.0

* SrDateModified ByWhy & What is modified

* 1.2008-7-31 小猪 新建

**/

package fish;

import java.awt.Color;

import java.awt.Graphics;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.Timer;

/**

* 豆豆类

* 2008-7-31

* @author达内科技[Tarena Training Group]

* @version1.0

* @sinceJDK1.6(建议)

* @authorAdministrator

*/

public class FishBean implements ActionListener{

/** 小鱼的位置x */

public int posx = 190;

/** 小鱼的位置y */

public int posy = 190;

/** 小鱼的大小,以size为半径画豆豆(圆)。 */

public int size = 10;

/** 小鱼的当前颜色 */

private Color color = Color.MAGENTA;

/** 小鱼的新颜色 */

private Color newColor = Color.MAGENTA;

/** 小鱼的旧颜色 */

private Color oldColor = Color.GRAY;

/** 小鱼消失时的闪烁时间 */

public static int flickerTime = 350;

/** 小鱼消失时的闪烁次数 */

public static int filckerNum = 8;

private int hasFileckedNum = 0;

/** 小鱼消失时闪烁的定时器 */

private Timer timer = null;

/**

* 缺省构造函数。按位置(40,40),大小15,颜色Color.MAGENTA构造一个豆豆。

*/

public FishBean() {

this(190,190,10,Color.MAGENTA,Color.GRAY);

}

/**

* 按照位置、大小、颜色构造一个豆豆类。

* @param posx 豆豆的水平坐标x。

* @param posy 豆豆的垂直坐标y。

* @param size 豆豆的大小。

* @param newColor 豆豆的颜色。

* @param oldColor 豆豆的旧颜色

*/

public FishBean(int posx,int posy,int size,Color newColor,Color oldColor) {

this.posx = posx;

this.posy = posy;

this.size = size;

this.newColor = newColor;

this.oldColor = oldColor;

this.color = newColor;

timer = new Timer(flickerTime,this);

}

/**

* 移动豆豆到新的位置。

* @param posx 豆豆的新水平坐标x。

* @param posy 豆豆的新垂直坐标y。

*/

public void newPos(int posx,int posy){

this.posx = posx;

this.posy = posy;

}

/**

* 绘制豆豆。

* @param g 画笔

*/

public void paint(Graphics g){

Color c = g.getColor();

g.setColor(color);

g.fillOval(posx, posy, size, size);

g.setColor(c);

}

/**

* 停止Timer。

*/

public void stopTimer(){

color = newColor;

timer.stop();

hasFileckedNum = 0;

}

/**

* 启动Timer。

*/

public void runTimer(){

timer.start();

}

/**

* 定时器事件。

*/

public void actionPerformed(ActionEvent e) {

hasFileckedNum++;

if(color.equals(newColor) || color==newColor)

color = oldColor;

else

color = newColor;

//定时器运行的次数完成时,停止定时器。

if(hasFileckedNum==filckerNum && timer.isRunning()){

stopTimer();

}

}

/**

* Timer定时器是否运行中。

* @return 返回Timer是否运行中。

*/

public boolean timerIsRunning(){

return timer.isRunning();

}

}

java 吃豆豆游戏背景底纹_java swing开发简单的大鱼吃豆子小游戏,可用于毕业设计(附详细设计文档)...相关推荐

  1. 大鱼吃豆子游戏java_java swing开发简单的大鱼吃豆子小游戏,可用于毕业设计(附详细设计文档)...

    /** * @(#)fish.BigMouthFish.java 2008-7-31 * Copy Right Information: Tarena * Project: fish * JDK ve ...

  2. 用Java写吃豆子游戏的论文_java swing开发简单的大鱼吃豆子小游戏,可用于毕业设计(附详细设计文档)...

    /** * @(#)main.BigMonthFishFrame.java 2008-7-31 * Copy Right Information: Tarena * Project: main * J ...

  3. java毕业设计网页小游戏交流论坛源码+lw文档+mybatis+系统+mysql数据库+调试

    java毕业设计网页小游戏交流论坛源码+lw文档+mybatis+系统+mysql数据库+调试 java毕业设计网页小游戏交流论坛源码+lw文档+mybatis+系统+mysql数据库+调试 本源码技 ...

  4. java进销存管理系统_java swing开发进销存管理系统

    此套系统首先分为五大部分,分别为登录.首页.基础数据.进销存管理.用户管理,首页为欢迎页面,基础数据下设商品管理功能模块,进销存管理下设销售单.入库单.出库单.仓库管理四个功能模块,用户管理为单独功能 ...

  5. java 锟斤 解决乱码_java eclipse 开发中文乱码锟斤拷小锟斤拷锟

    最近在做项目的时候发现有些员工提交的代码到SVN上之后乱码了,eclipse没有乱码,乱码字样为"锟斤拷小锟斤拷锟斤拷植锟斤拷锟斤拷3146锟斤拷锟斤拷锟斤拷锟绞撅拷锟绞硷拷锟揭筹拷锟?&q ...

  6. java web编写的在线测试(调查)系统 完整源码 附详细设计文档

    今天为大家分享一个java web编写的在线测试(调查)系统,目前系统功能已经完善,后续会进一步完善.整个系统界面漂亮,有完整得源码,希望大家可以喜欢.喜欢的帮忙点赞和关注.一起编程.一起进步. 开发 ...

  7. Java GUI编程 简单的学号 姓名输入框,并可导入保存在txt文档中

    (java GUI使用Frame作为顶层容器,简单的学号 姓名输入框,并可导入保存在txt文档中 下面是源代码: import java.awt.*; import java.awt.event.*; ...

  8. 基于JavaSwing开发吃豆子小游戏 课程设计 大作业源码

    基于JavaSwing开发吃豆子小游戏:   (大作业) 开发环境: Windows操作系统 开发工具: MyEclipse/Eclipse/idea+Jdk 运行效果图: 基于JavaSwing开发 ...

  9. python实现简单小游戏_用python开发一个有趣的猜数字小游戏(实现简单的GUI界面学习)...

    文章目录 用python开发一个有趣的猜数字小游戏 用于字符串的格式化,通过 {} 和 : 来代替以前的 % 1. python的GUI编程 1.1 pythonGUI常用库对比 Python 提供了 ...

  10. 14天学会安卓开发(附PDF文档和全部示例代码)

    前言: 本人也是菜鸟,老鸟看了此文有哪里不好之处敬请指点,本书是根据<<Android应用开发揭秘>>攒写的,如何把一本书读薄,是一件值得思考的问题.相信看过那本书的都知道有5 ...

最新文章

  1. Python 列表 list() 方法
  2. android数据的五种存储方式
  3. SQL总结(快速参考)
  4. javascript 运算符优先级
  5. python什么学历能学_自考学历找工作,钱少点也没关系?
  6. 12款很酷的使用大头照的国外名片设计作品
  7. 一种可以解决python读取文件中文出乱码的方法
  8. SparkSession对象
  9. 常用的java开发框架_Java开发中常用框架
  10. 这是我经历过最惨的转正答辩了
  11. ARM存储器控制器的使用
  12. Android Jni OpenCV-绘制朱利亚(Julia)集合图形
  13. JAXB JavaBean与Xml之间转换
  14. 庆山《得未曾有》摘录
  15. 如何把SQL表格发给别人直接使用
  16. 19.jvm内存结构部分——堆_内存诊断_jmap
  17. 学习笔记整理——vim,vim文件编码,vim配置文件
  18. 易语言助手用法与方便之处
  19. Android开发之BroadcastReceiver
  20. ECSHOP最小起订数插件,ECSHOP商品起订数量插件,ECSHOP商品批发限购插件,ecshop商品批发起订量限购插件,ecshop商品购买批发最小起订量数量插件

热门文章

  1. 基于Proteus仿真8253音乐发生器
  2. android开发 手写签名,Android实现手写签名
  3. Oracle EMCC 12c emcli命令行工具安装以及使用介绍
  4. 视频编解码之理论概述
  5. 从苏宁电器到卡巴斯基(第二部)第09篇:我在卡巴的日子 IX
  6. 《计算机网络教程》(微课版 第五版) 第二章 物理层 课后习题及答案
  7. 计算机发展史评课议课稿,评课稿模板5篇
  8. WiFi无缝漫游详解
  9. comsol 学习笔记【基础知识,磁场与结构场耦合为主】
  10. webqq机器人java_机器人之一步一步来做WebQQ机器人-(三)(登录QQ并保持在线)