JAVA中Swing的应用的实现
2014-02-25 18:06
225 查看
Swing的定时器java.swing.Timer的应用:
Swing .Timer在游戏动画的编程中应用较广,如在编程软件中把一个小球添加到一个项目文件中,再建立相关的主程序及弹性小球所在的活动桌面(小球的活动范围为程序中的面板),崽崽主程序添加小球的移动速度,及移动的相关参数,可以实现简单的弹性小球,它可以在活动范围内移动,如给它设定一个让它碰到面板边时,能像物理原理那样实现反弹,就可以设定小球的起始位置坐标比如(0,50),他的移动速度按一定的速率进行。根据物理原理他的分速度,及xy方向的速度不变,故可以根据他的移动速度算出他的移动坐标,根据移动坐标的范围,设定条件就可以实现小球的触壁反弹。
如可以加类似的条件:
if(x<0 ||x>(panelWidth-IMAGE_SIZE) ){
moveX = -moveX;
moveY = moveY;
}
if(y<0 || y>(panelHight-IMAGE_SIZE)){
moveX = moveX;
moveY = -moveY;
}
然后再写出他的坐标表达式
x += moveX;
y += moveY;
再调用repaint()从而实现小球的跟踪,给人的眼睛就会产生视觉效果。就会产生弹性小球,它会实现物理中的弹性碰撞。
Swing .Timer在游戏动画的编程中应用较广,如在编程软件中把一个小球添加到一个项目文件中,再建立相关的主程序及弹性小球所在的活动桌面(小球的活动范围为程序中的面板),崽崽主程序添加小球的移动速度,及移动的相关参数,可以实现简单的弹性小球,它可以在活动范围内移动,如给它设定一个让它碰到面板边时,能像物理原理那样实现反弹,就可以设定小球的起始位置坐标比如(0,50),他的移动速度按一定的速率进行。根据物理原理他的分速度,及xy方向的速度不变,故可以根据他的移动速度算出他的移动坐标,根据移动坐标的范围,设定条件就可以实现小球的触壁反弹。
如可以加类似的条件:
if(x<0 ||x>(panelWidth-IMAGE_SIZE) ){
moveX = -moveX;
moveY = moveY;
}
if(y<0 || y>(panelHight-IMAGE_SIZE)){
moveX = moveX;
moveY = -moveY;
}
然后再写出他的坐标表达式
x += moveX;
y += moveY;
再调用repaint()从而实现小球的跟踪,给人的眼睛就会产生视觉效果。就会产生弹性小球,它会实现物理中的弹性碰撞。
相关文章推荐
- Java文件写入文本内容方法
- String系列——JVM对String的处理
- Java 异常处理的一般结构
- javaSE-面向对象-构造代码块
- Spring MVC一个简单的实例
- Spring MVC一个简单的实例
- JAVA之异常处理问题
- ajax跨域post请求的java代理实现
- java.sql.SQLException: Before start of result set解决方法
- 如何在java类中读取Properties配置文件
- 七大经典排序【 交换排序】之冒泡排序
- JAVA.SWT/JFace: SWT基本组件之按钮(Button)
- 【Java进阶】对Java中的传值调用的理解
- SpringMVC注解验证的国际化
- eclipse 安装插件 Aptana
- javaSE-面向对象-静态代码块
- Struts2 url中包含感叹号实现动态方法调用
- JAVA array,map 转 json 字符串
- Eclipse Indigo 3.7.0 装配GIT插件提示 requires 'bundle or
- MyEclipse快捷键失效