/** * @(#)fish.FishBean.java 2008-7-31 * Copy Right Information : Tarena * Project : fish * JDK version used : jdk1.6.4 * Comments : 豆豆类 * Version : 1.0 * Sr Date Modified By Why & 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] * @version 1.0 * @since JDK1.6(建议) * @author Administrator */ 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(); } }
最近下载更多
520131 LV5
2023年6月27日
微信网友_6438918626938880 LV1
2023年4月19日
酒非儿 LV6
2023年2月22日
xiaokang1 LV10
2023年1月11日
qwewrouy LV1
2022年5月29日
云水幕 LV1
2022年1月15日
978806986 LV16
2021年11月30日
1584160851 LV1
2021年8月6日
Guan008 LV4
2021年6月29日
养乐多 LV3
2021年4月25日
最近浏览更多
米继宝是憨憨 LV4
1月29日
pangzhihui LV14
2023年12月14日
15066671558
2023年10月10日
暂无贡献等级
18176866431 LV4
2023年8月28日
520131 LV5
2023年6月27日
LITIANYU084414 LV11
2023年6月16日
17683946472 LV9
2023年6月8日
海棠花瘦 LV9
2023年5月25日
luo110012 LV9
2023年5月15日
微信网友_6438918626938880 LV1
2023年4月19日