AnimatedImage QML Type
Reproduce animaciones almacenadas como una serie de imágenes. Más...
| Import Statement: | import QtQuick |
| Inherits: |
Propiedades
- currentFrame : int
- frameCount : int
- paused : bool
- playing : bool
- source : url
- sourceSize : size
- speed : real
(since QtQuick 2.11)
Descripción detallada
El tipo AnimatedImage amplía las características del tipo Image, proporcionando una forma de reproducir animaciones almacenadas como imágenes que contienen una serie de fotogramas, como las almacenadas en archivos GIF.
Puede obtenerse información sobre el fotograma actual y la duración total de la animación mediante las propiedades currentFrame y frameCount. Puede iniciar, pausar y detener la animación cambiando los valores de las propiedades playing y paused.
La lista completa de formatos soportados puede determinarse con QMovie::supportedFormats().
Ejemplo de uso
El siguiente QML muestra cómo mostrar una imagen animada y obtener información sobre su estado, como el fotograma actual y el número total de fotogramas. El resultado es una imagen animada con un simple indicador de progreso debajo.
Nota: Cuando las imágenes animadas se almacenan en caché, cada fotograma de la animación se almacenará en caché.
Establezca caché en false si está reproduciendo una animación larga o grande y desea conservar memoria.
Si los datos de la imagen provienen de un dispositivo secuencial (por ejemplo, un socket), AnimatedImage sólo puede hacer un bucle si cache está configurado a 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" } }
Véase también BorderImage y Image.
Documentación de propiedades
currentFrame es el marco visible en ese momento. Controlando los cambios en esta propiedad, puede animar otros elementos al mismo tiempo que la imagen.
frameCount es el número de fotogramas de la animación. Para algunos formatos de animación, frameCount es desconocido y tiene un valor de cero.
paused : bool
Esta propiedad indica si la imagen animada está en pausa.
Por defecto, esta propiedad es false. Establézcala a true cuando desee pausar la animación.
playing : bool
Esta propiedad indica si la imagen animada se está reproduciendo.
Por defecto, esta propiedad es true, lo que significa que la animación comenzará a reproducirse inmediatamente.
Nota: esta propiedad se ve afectada por los cambios en el estado real de reproducción de AnimatedImage. Si se utilizan imágenes no animadas, playing deberá establecerse manualmente a true para animar las imágenes siguientes.
AnimatedImage { onStatusChanged: playing = (status == AnimatedImage.Ready) }
source : url
Esta propiedad contiene la URL que hace referencia a la imagen de origen.
AnimatedImage puede manejar cualquier formato de imagen soportado por Qt, cargado desde cualquier esquema de URL soportado por Qt. Sin embargo, no es compatible con QQuickImageProvider.
sourceSize : size
Esta propiedad contiene el ancho y alto escalados de la imagen de cuadro completo.
A diferencia de las propiedades width y height, que escalan el cuadro de la imagen, esta propiedad establece el número máximo de píxeles almacenados para los cuadros en caché, de forma que las animaciones grandes no utilicen más memoria de la necesaria.
Si el tamaño original es mayor que sourceSize, la imagen se reduce.
El tamaño natural de la imagen puede restaurarse estableciendo esta propiedad en undefined.
Nota: Cambiar esta propiedad dinámicamente hace que la fuente de la imagen sea recargada, potencialmente incluso desde la red, si no está en la caché del disco.
Véase también Image::sourceSize.
speed : real [since QtQuick 2.11]
Esta propiedad contiene la velocidad de la animación.
La velocidad se mide en porcentaje de la velocidad original de la imagen animada. La velocidad por defecto es 1.0 (velocidad original).
Esta propiedad se introdujo en QtQuick 2.11.
© 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.