我有一个简单的Squeak Smalltalk变形物。
我想将它从x1,y1移动到x2,y2(动画)并持续5秒(或10秒)。
在Squeak Smalltalk中是否有内置的方法来创建动画?
在Squeak Smalltalk中是否有内置的方法来创建动画?
是的,有一种内置的方法:
创建一个 Morph 的子类并实现两个方法:
一个最小的示例:
Morph subclass: #MovingMorph
instanceVariableNames: ''
classVariableNames: ''
category: 'MovingMorph'
MovingMorph>>stepTime
stepTime
^ 100
MovingMorph>>step
step
self position: self position + (1@1)
MovingMorph new openInWorld
),通过startStepping
和stopStepping
控制动画。虽然可以使用Morphic步进来展示动画,但是Animations Project更进一步,提供了一个简单的接口来使用短动画:
AnimPropertyAnimation new
duration: 500;
target: myMorph;
property: #position; "There should be a message called #position:."
startValue: 10@10;
endValue: 100@100;
start.
像淡入淡出或类似的效果更简单:
myMorph fadeOut.