1

我根据用户所需的位置和持续时间成功实现了小部件的动画。但是,如果我将两个小部件设置为移动,它们一次只能设置一个动画。当我开始将小部件 A 移动 1000 毫秒时。当它的时间为 500 毫秒时,小部件 B 应该立即开始移动另外 1000 毫秒。

我可以通过 SWT 实现这一点吗?

4

2 回答 2

0

怎么样:

beginMovingWidgetA();
new Thread(new Runnable() {
    @Override
    public void run () {
        try {
            Thread.sleep(500);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        beginMovingWidgetB();
    }
}).start();

(这假设至少beginMovingWidgetA是一个异步方法。)

于 2013-05-14T01:28:59.413 回答
0

您基本上需要将动画任务安排为Runnableon Display

您可能想查看以下现有库。

https://java.net/projects/timingframework

https://kenai.com/projects/trident/pages/Home

Trident 有很好的特性,它同时具有SwingSWT实现。

于 2013-05-14T08:37:15.300 回答