アニメーションコントロール 
SimpleAnimation コントロールと Throbber コントロールの代わりに実装されたコントロール。OOo 3.4 から利用できます。
アニメーションコントロール 
画像をパラパラ漫画のように切り替えてアニメーションするコントロールです。
Sub AnimatedControl
sDir = "file:///home/hoge/Documents/images/icons/"
DialogLibraries.loadLibrary("Standard")
oDialog = CreateUnoDialog(DialogLibraries.Standard.Dialog1)
oDialogModel = oDialog.getModel()
oAnimated = CreateUnoService("com.sun.star.awt.AnimatedImagesControl")
oAnimatedModel = CreateUnoService("com.sun.star.awt.AnimatedImagesControlModel")
oAnimated.setModel(oAnimatedModel)
oAnimatedModel.insertImageSet(0, Array(_
sDir & "add.png", sDir & "down.png", sDir & "up.png")
oAnimatedModel.StepTime = 1000
oAnimatedModel.AutoRepeat = False
oAnimatedModel.ScaleMode = 1
oDialog.addControl("animated", oAnimated)
oAnimated.setPosSize(0, 0, 64, 64, com.sun.star.awt.PosSize.POSSIZE)
oAnimated.startAnimation()
oDialog.execute()
oDialog.dispose()
End Sub
StepTime を変更しても効果がないような気がします。
コントロールのインターフェース
- css.awt.XAnimation
- void startAnimation()
- void stopAnimation()
- boolean isAnimationRunning()
モデルのインターフェース
- css.awt.XAnimatedImages
- セットから最適なものが選択されてアニメーションとして表示されます。
- long getImageSetCount()
- []string getImageSet( [in] long index )
- void insertImageSet( [in] long index, [in] []string urls )
- void replaceImageSet( [in] long index, [in] []string urls )
- void removeImageSet( [in] long index )
- attribute は以下のもの
名前 | 型 | 説明 |
StepTime | long | 切り替え間隔 |
AutoRepeat | boolean | 自動的に繰り返し |
ScaleMode | short | 拡大、縮小モード css.awt.ImageScaleMode |
実行状態を示すコントロール 
濃淡が変化して回転するように見える実行状態を示すコントロールです。コントロールは 16x16、32x32、64x64 のサイズごとに画像が変更されます、大きさを調整して利用してください。
アニメーションコントロールのモデルとして css.awt.SpinningProgressControlModel サービスを利用します。
Sub SpinningProgress_1
DialogLibraries.loadLibrary("Standard")
oDialog = CreateUnoDialog(DialogLibraries.Standard.Dialog1)
oDialogModel = oDialog.getModel()
oAnimated = CreateUnoService("com.sun.star.awt.AnimatedImagesControl")
oSpinningModel = CreateUnoService("com.sun.star.awt.SpinningProgressControlModel")
oAnimated.setModel(oSpinningModel)
oDialog.addControl("spin", oAnimated)
oAnimated.setPosSize(0, 0, 64, 64, com.sun.star.awt.PosSize.POSSIZE)
oAnimated.startAnimation()
oDialog.execute()
oDialog.dispose()
End Sub