加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 如何使用swing和clojure做动画?

发布时间:2020-12-15 00:50:47 所属栏目:Java 来源:网络整理
导读:我试图在棋盘上制作棋子.首先,我创建了一个 java.util.Timer对象,“scheduleAtFixedRate”是一个实现为代理函数的TimerTask.因此,我记录了要移动的部分(片段移动记录)以及何时适当(当用户使用鼠标移动部分时),如果记录不是nil并执行片段,则应测试TimerTask代
我试图在棋盘上制作棋子.首先,我创建了一个 java.util.Timer对象,“scheduleAtFixedRate”是一个实现为代理函数的TimerTask.因此,我记录了要移动的部分(片段移动记录)以及何时适当(当用户使用鼠标移动部分时),如果记录不是nil并执行片段,则应测试TimerTask代理函数 – 移动功能.片段移动功能仅根据预先计算的矢量更新片段的x和y坐标.我在片段移动记录上添加了一个添加手表,所以当它改变时它应该重新绘制板(画布). paint方法测试这件棋子的动作记录是否为零.

问题是动画没有出现.这件作品只是跳到命运,没有两者之间的运动.动画方案有一些问题,你有更好的方法吗?

解决方法

Swing组件的更新应该在Event Dispatch Thread(EDT)上完成.所以你应该使用Swing Timer,因为在EDT上执行Timer时会执行任何代码.

你应该做的就是设置棋子的位置,它将自动重绘自己.

有关更多信息,请阅读How to Use Timers上的Swing教程中的部分.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读