Pregunta

Tengo un directroy donde tengo varias imágenes y animaciones gif. Quiero publicar que las imágenes y animaciones en un QDialog en un bucle infinito (por cíclicamente imágenes cambiantes en 2 minutos de intervalo) y en el que las imágenes y animaciones que desea establecer un vínculo para que al hacer clic en el navegador abra el enlace serie.

¿Cómo pude hacer esto?

Por favor, considere que sé cómo conseguir todo .jpg .gif AMD nombres de archivo (ruta completa) en el directorio. Tenga en cuenta que hay un fileNameList QStringList; el cual contiene ese rutas completas.

¿Fue útil?

Solución

Puede utilizar 2 QLabels para esto. La primera de ellas será utilizada para las imágenes estáticas como JPG y el segundo para las animaciones. En la primera se puede utilizar setPixmap para establecer la imagen y en el segundo se necesita para crear un objeto QMovie dándole el archivo GIF en el constructor. Una vez que se crea el objeto se puede asignar a la película una etiqueta utilizando la función setMovie ().

La película no se inicia hasta que llame start () en el objeto QMovie.

Con esto usted tiene animaciones e imágenes estáticas. Puesto que usted desee y luego cambia cada 2 segundos que sugeriría para almacenar todos los nombres de archivo en un QList y luego usar un QTimer para leer el siguiente nombre de archivo y cargarlo en una de las etiquetas (el uno para imágenes estáticas o la otra) y ocultar la que no va a ser visible.

Para abrir vínculos que puede subclase de la clase QLabel y reemplazar el método mousePressEvent. Dentro del método puede llamar QDesktopServices :: openExternalLink (enlace). Puede agregar el enlace como un miembro de la subclase.

Buena suerte!

Otros consejos

Se puede usar QLabel :: setPixmap para mostrar una imagen en una etiqueta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top