C
AnimatedSprite QML Type
スプライトのアニメーションを描画します。詳細...
| Import Statement: | import QtQuick |
| Since: | Qt Quick Ultralite 2.3 |
| Inherits: |
プロパティ
- currentFrame : int
- frameCount : int
- frameDuration : int
- frameHeight : int
- frameWidth : int
- loops : int
- paused : bool
(since Qt Quick Ultralite 2.5) - running : bool
- source : string
シグナル
- void finished()
方法
- void advance()
- void pause()
(since Qt Quick Ultralite 2.5) - void restart()
- void resume()
(since Qt Quick Ultralite 2.5) - void start()
- void stop()
詳細説明
AnimatedSpriteは、1つの画像ファイル内に複数のフレームとして用意されたアニメーションをレンダリングし、制御します。アニメーションは、固定速度で再生することも、手動でフレームを進めながら進行状況を制御することも可能です。
次のスプライトシートを考えてみましょう:
これは4つのフレームに分割できます:
以下のコードを使用すると、各フレームを1フレームあたり500ミリ秒の速度で再生できます:
| コード | 結果 |
|---|---|
|
プロパティのドキュメント
currentFrame : int
アニメーションが一時停止しているときに、現在のフレームを手動で進めるには、このプロパティを設定します。また、advance() メソッドを呼び出すこともできます。
frameCount : int
AnimatedSprite 内のフレーム数を示します。
frameDuration : int
アニメーションの各フレームの持続時間(ミリ秒単位)。正の値のみ有効です。
アニメーションの実行中にこのプロパティを変更すると、アニメーションが再開始されます。
frameHeight : int
AnimatedSprite で、単一フレームの高さを設定します。
frameWidth : int
AnimatedSprite で、1つのフレームの幅を設定します。
loops : int
アニメーションをこの回数再生すると、アニメーションは自動的に停止します。有効なのは正の値のみです。
アニメーションを無限に再生するには、AnimatedSprite.Infinite に設定してください。
デフォルトはAnimatedSprite.Infinite です。
paused : bool [since Qt Quick Ultralite 2.5]
アニメーションが一時停止中かどうかを示します。
アニメーションが一時停止している場合、現在のフレームを手動で進めることができます。
デフォルトはfalse
このプロパティは、Qt Quick Ultralite 2.5で導入されました。
running : bool
アニメーションが再生中かどうかを示します。
デフォルトはtrue
source : string
アニメーションの画像ソース。
ImageFiles.MCU.resourceAnimatedSpriteFrameWidthおよびImageFiles.MCU.resourceAnimatedSpriteFrameHeightを使用して画像ソースのフレームサイズを指定することで、画像をフレームシーケンスに分割し、共通部分を共有することでリソースの最適化が可能になります。
「リソースの管理」も参照してください 。
シグナルのドキュメント
void finished()
このシグナルは、スプライトのアニメーションが完了したときに発火します。
running プロパティがfalse に設定されているか、loops プロパティがAnimatedSprite.Infinite に設定されている場合は、このシグナルは発火しません。
注: 対応するハンドラは onFinished です。
メソッドのドキュメント
void advance()
スプライトのアニメーションを1フレーム分進めます。
[since Qt Quick Ultralite 2.5] void pause()
スプライトのアニメーションを一時停止します。paused がtrue に設定されている場合、この処理は何も行いません。
このメソッドは、Qt Quick Ultralite 2.5 で導入されました。
void restart()
スプライトのアニメーションを再開します。
[since Qt Quick Ultralite 2.5] void resume()
paused がtrue の場合、スプライトのアニメーションを再開します。それ以外の場合は、何もしません。
このメソッドは、Qt Quick Ultralite 2.5 で導入されました。
void start()
スプライトのアニメーションを開始します。アニメーションがすでに実行中の場合、このメソッドを呼び出しても何の効果もありません。
void stop()
スプライトのアニメーションを停止します。アニメーションが実行されていない場合、このメソッドを呼び出しても何の効果もありません。
特定のQtライセンスの下で利用可能です。
詳細はこちらをご覧ください。