このページでは

AnimatedImage QML Type

一連の画像として保存されたアニメーションを再生します。詳細...

Import Statement: import QtQuick
Inherits:

Image

列挙型

プロパティ

信号

詳細な説明

AnimatedImage 型は、Image 型の機能を拡張したもので、GIF ファイルなどに保存されているような、一連のフレームを含む画像として保存されたアニメーションを再生する方法を提供します。

アニメーションの現在のフレームや総再生時間に関する情報は、currentFrame およびframeCount プロパティを使用して取得できます。playing およびpaused プロパティの値を変更することで、アニメーションの再生、一時停止、停止を行うことができます。

サポートされているフォーマットの完全なリストは、QMovie::supportedFormats() を使用して確認できます。

アニメーションの再生回数は、loops プロパティを使用して制御できます。デフォルトでは、アニメーションは無限にループします。finished シグナルは、アニメーションが指定されたループ回数を再生し終えたときに発火します。

使用例

以下の QML は、アニメーション画像を表示し、現在のフレームや総フレーム数などの状態情報を取得する方法を示しています。その結果、アニメーション画像の下にシンプルな進行状況インジケーターが表示されるようになります。

注:アニメーション画像がキャッシュされる場合、アニメーションのすべてのフレームがキャッシュされます。

長時間のアニメーションや大容量のアニメーションを再生し、メモリを節約したい場合は、cache を false に設定してください。

画像データがシーケンシャルデバイス(ソケットなど)から取得される場合、AnimatedImage は cache が true に設定されている場合にのみループ再生が可能です。


import QtQuick

Rectangle {
    width: animation.width; height: animation.height + 8

    AnimatedImage { id: animation; source: "animation.gif" }

    Rectangle {
        property int frames: animation.frameCount

        width: 4; height: 8
        x: (animation.width - width) * animation.currentFrame / frames
        y: animation.height
        color: "red"
    }
}

BorderImage およびImageも参照してください 。

列挙型のドキュメント

[since 6.12] FinishBehavior

この列挙型は、アニメーションが自然に終了した際の挙動を表します。

定数説明
AnimatedImage.FinishAtInitialFrameアニメーションが終了すると、最初のフレームに戻ります。これがデフォルトの動作です。
AnimatedImage.FinishAtFinalFrameアニメーションが終了すると、最終フレームのままになります。

この列挙型は Qt 6.12 で導入されました。

プロパティのドキュメント

currentFrame : int

frameCount : int [read-only]

currentFrame 現在表示されているフレームです。このプロパティの変化を監視することで、画像と同時に他のアイテムをアニメーションさせることができます。

frameCount は、アニメーションのフレーム数です。一部のアニメーション形式では、frameCount は不明であり、値はゼロになります。

finishBehavior : enumeration [since 6.12]

このプロパティは、アニメーションが自然に終了した際の挙動を指定します。デフォルト値はFinishBehavior です。{FinishAtInitialFrame}。

このプロパティは Qt 6.12 で導入されました。

「FinishBehavior」も参照してください 。

loops : int [since 6.12]

このプロパティには、アニメーションが再生される回数が格納されます。

この回数だけアニメーションが再生された後、アニメーションは自動的に停止し、「finished 」シグナルが発信されます。

これを「AnimatedImage.Infinite 」(デフォルト)に設定すると、アニメーションは自動的に停止しません。

loops を0 に設定すると、アニメーションは再生されません。

負の値は無効です。

このプロパティは Qt 6.12 で導入されました。

paused : bool

このプロパティは、アニメーション画像が一時停止されているかどうかを表します。

デフォルトでは、このプロパティは false です。アニメーションを一時停止したい場合は、true に設定してください。

playing : bool

このプロパティは、アニメーション画像が再生中かどうかを示します。

デフォルトでは、このプロパティはtrueに設定されており、アニメーションが直ちに再生を開始することを意味します。

注:このプロパティは、AnimatedImage の実際の再生状態の変更の影響を受けます。アニメーションのない画像が使用されている場合、後続の画像をアニメーション化するには、playing を手動でtrue に設定する必要があります。

AnimatedImage {
    onStatusChanged: playing = (status == AnimatedImage.Ready)
}

source : url

このプロパティには、元の画像を参照するURLが格納されます。

AnimatedImage Qtがサポートするあらゆる画像形式に対応しており、QtがサポートするあらゆるURLスキーマから読み込むことができます。ただし、QQuickImageProvider とは互換性がありません。

sourceSize : size

このプロパティには、フルフレーム画像の拡大・縮小後の幅と高さが格納されます。

画像の描画を拡大縮小するwidth やheight プロパティとは異なり、このプロパティはキャッシュされたフレームに保存されるピクセル数を最大値に設定し、大規模なアニメーションが不要なメモリを消費しないようにします。

元のサイズが `sourceSize` より大きい場合、画像は縮小されます。

このプロパティを `undefined` に設定することで、画像の本来のサイズを復元することができます。

注: このプロパティを動的に変更すると、画像ソースが再読み込みされます。ディスクキャッシュに画像がない場合は、ネットワークから読み込まれることもあります。

「Image::sourceSize」も参照してください 。

speed : real [since QtQuick 2.11]

このプロパティは、アニメーションの速度を指定します。

速度は、元のアニメーション画像の速度に対する割合(パーセンテージ)で表されます。デフォルトの速度は 1.0(元の速度)です。

このプロパティは QtQuick 2.11 で導入されました。

シグナルのドキュメント

[since 6.12] finished()

このシグナルは、アニメーションが `loops` で指定された回数分の再生を完了したときに発火します。

playing が手動でfalse に設定されている場合や、loops プロパティがAnimatedImage.Infinite に設定されているアニメーションについては、このシグナルは発火しません。

注: 対応するハンドラは onFinished です。

このシグナルは Qt 6.12 で導入されました。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.