内容表

上一话题

QMoveEvent

下一话题

QNativeGestureEvent

QMovie

QMovie class is a convenience class for playing movies with QImageReader . 更多

Inheritance diagram of PySide2.QtGui.QMovie

概要

信号

静态函数

详细描述

This class is used to show simple animations without sound. If you want to display video and media content, use the Qt Multimedia multimedia framework instead.

First, create a QMovie object by passing either the name of a file or a pointer to a QIODevice containing an animated image format to QMovie ‘s constructor. You can call isValid() to check if the image data is valid, before starting the movie. To start the movie, call start() . QMovie 将进入 运行 state, and emit started() and stateChanged() . To get the current state of the movie, call state() .

To display the movie in your application, you can pass your QMovie 对象到 setMovie() 。范例:

label = QLabel()
movie = QMovie("animations/fire.gif")
label.setMovie(movie)
movie.start()
											

Whenever a new frame is available in the movie, QMovie 将发射 updated() . If the size of the frame changes, resized() is emitted. You can call currentImage() or currentPixmap() to get a copy of the current frame. When the movie is done, QMovie 发射 finished() . If any error occurs during playback (i.e, the image file is corrupt), QMovie 将发射 error() .

You can control the speed of the movie playback by calling setSpeed() , which takes the percentage of the original speed as an argument. Pause the movie by calling setPaused (true)。 QMovie will then enter Paused state and emit stateChanged() . If you call setPaused (false), QMovie will reenter 运行 state and start the movie again. To stop the movie, call stop() .

Certain animation formats allow you to set the background color. You can call setBackgroundColor() to set the color, or backgroundColor() to retrieve the current background color.

currentFrameNumber() returns the sequence number of the current frame. The first frame in the animation has the sequence number 0. frameCount() returns the total number of frames in the animation, if the image format supports this. You can call loopCount() to get the number of times the movie should loop before finishing. nextFrameDelay() returns the number of milliseconds the current frame should be displayed.

QMovie can be instructed to cache frames of an animation by calling setCacheMode() .

调用 supportedFormats() for a list of formats that QMovie 支持。

class QMovie ( device [ , format=QByteArray() [ , parent=None ] ] )

QMovie([parent=None])

QMovie(fileName[, format=QByteArray()[, parent=None]])

param parent

QObject

param format

QByteArray

param device

QIODevice

param fileName

unicode

构造 QMovie object, passing the parent 对象到 QObject ‘s constructor.

PySide2.QtGui.QMovie. MovieState

此枚举描述不同状态为 QMovie .

常量

描述

QMovie.NotRunning

The movie is not running. This is QMovie ‘s initial state, and the state it enters after stop() has been called or the movie is finished.

QMovie.Paused

The movie is paused, and QMovie stops emitting updated() or resized() . This state is entered after calling pause() or setPaused (true). The current frame number it kept, and the movie will continue with the next frame when unpause() or setPaused (false) is called.

QMovie.Running

The movie is running.

PySide2.QtGui.QMovie. CacheMode

此枚举描述不同缓存模式,为 QMovie .

常量

描述

QMovie.CacheNone

没有帧被缓存 (默认)。

QMovie.CacheAll

所有帧都被缓存。

PySide2.QtGui.QMovie. backgroundColor ( )
返回类型

QColor

Returns the background color of the movie. If no background color has been assigned, an invalid QColor 被返回。

PySide2.QtGui.QMovie. cacheMode ( )
返回类型

CacheMode

另请参阅

setCacheMode()

PySide2.QtGui.QMovie. currentFrameNumber ( )
返回类型

int

Returns the sequence number of the current frame. The number of the first frame in the movie is 0.

PySide2.QtGui.QMovie. currentImage ( )
返回类型

QImage

返回当前帧,作为 QImage .

PySide2.QtGui.QMovie. currentPixmap ( )
返回类型

QPixmap

返回当前帧,作为 QPixmap .

PySide2.QtGui.QMovie. device ( )
返回类型

QIODevice

Returns the device QMovie reads image data from. If no device has currently been assigned, None 被返回。

PySide2.QtGui.QMovie. error ( error )
参数

error ImageReaderError

PySide2.QtGui.QMovie. fileName ( )
返回类型

unicode

Returns the name of the file that QMovie reads image data from. If no file name has been assigned, or if the assigned device is not a file, an empty QString 被返回。

PySide2.QtGui.QMovie. finished ( )
PySide2.QtGui.QMovie. format ( )
返回类型

QByteArray

Returns the format that QMovie uses when decoding image data. If no format has been assigned, an empty QByteArray() is returned.

另请参阅

setFormat()

PySide2.QtGui.QMovie. frameChanged ( frameNumber )
参数

frameNumber int

PySide2.QtGui.QMovie. frameCount ( )
返回类型

int

Returns the number of frames in the movie.

Certain animation formats do not support this feature, in which case 0 is returned.

PySide2.QtGui.QMovie. frameRect ( )
返回类型

QRect

Returns the rect of the last frame. If no frame has yet been updated, an invalid QRect 被返回。

PySide2.QtGui.QMovie. isValid ( )
返回类型

bool

返回 true if the movie is valid (e.g., the image data is readable and the image format is supported); otherwise returns false .

For information about why the movie is not valid, see lastError() .

PySide2.QtGui.QMovie. jumpToFrame ( frameNumber )
参数

frameNumber int

返回类型

bool

Jumps to frame number frameNumber 。返回 true 当成功时;否则返回 false .

PySide2.QtGui.QMovie. jumpToNextFrame ( )
返回类型

bool

Jumps to the next frame. Returns true 当成功时;否则返回 false .

PySide2.QtGui.QMovie. lastError ( )
返回类型

ImageReaderError

Returns the most recent error that occurred while attempting to read image data.

另请参阅

lastErrorString()

PySide2.QtGui.QMovie. lastErrorString ( )
返回类型

unicode

Returns a human-readable representation of the most recent error that occurred while attempting to read image data.

另请参阅

lastError()

PySide2.QtGui.QMovie. loopCount ( )
返回类型

int

Returns the number of times the movie will loop before it finishes. If the movie will only play once (no looping), returns 0. If the movie loops forever, returns -1.

Note that, if the image data comes from a sequential device (e.g. a socket), QMovie can only loop the movie if the cacheMode is set to CacheAll .

PySide2.QtGui.QMovie. nextFrameDelay ( )
返回类型

int

Returns the number of milliseconds QMovie will wait before updating the next frame in the animation.

PySide2.QtGui.QMovie. resized ( size )
参数

size QSize

PySide2.QtGui.QMovie. scaledSize ( )
返回类型

QSize

Returns the scaled size of frames.

PySide2.QtGui.QMovie. setBackgroundColor ( color )
参数

color QColor

For image formats that support it, this function sets the background color to color .

另请参阅

backgroundColor()

PySide2.QtGui.QMovie. setCacheMode ( mode )
参数

mode CacheMode

另请参阅

cacheMode()

PySide2.QtGui.QMovie. setDevice ( device )
参数

device QIODevice

把当前设备设为 device . QMovie will read image data from this device when the movie is running.

PySide2.QtGui.QMovie. setFileName ( fileName )
参数

fileName – unicode

Sets the name of the file that QMovie reads image data from, to fileName .

PySide2.QtGui.QMovie. setFormat ( format )
参数

format QByteArray

Sets the format that QMovie will use when decoding image data, to format . By default, QMovie will attempt to guess the format of the image data.

可以调用 supportedFormats() for the full list of formats QMovie 支持。

PySide2.QtGui.QMovie. setPaused ( paused )
参数

paused bool

paused is true, QMovie 将进入 Paused state and emit stateChanged (Paused); otherwise it will enter 运行 state and emit stateChanged (Running).

另请参阅

state()

PySide2.QtGui.QMovie. setScaledSize ( size )
参数

size QSize

Sets the scaled frame size to size .

PySide2.QtGui.QMovie. setSpeed ( percentSpeed )
参数

percentSpeed int

另请参阅

speed()

PySide2.QtGui.QMovie. speed ( )
返回类型

int

另请参阅

setSpeed()

PySide2.QtGui.QMovie. start ( )

Starts the movie. QMovie 将进入 运行 state, and start emitting updated() and resized() as the movie progresses.

QMovie is in the Paused state, this function is equivalent to calling setPaused (false). If QMovie is already in the 运行 state, this function does nothing.

PySide2.QtGui.QMovie. started ( )
PySide2.QtGui.QMovie. state ( )
返回类型

MovieState

返回当前状态,为 QMovie .

另请参阅

MovieState stateChanged()

PySide2.QtGui.QMovie. stateChanged ( state )
参数

state MovieState

PySide2.QtGui.QMovie. stop ( )

停止电影。 QMovie 进入 NotRunning state, and stops emitting updated() and resized() 。若 start() is called again, the movie will restart from the beginning.

QMovie is already in the NotRunning state, this function does nothing.

static PySide2.QtGui.QMovie. supportedFormats ( )
返回类型

Returns the list of image formats supported by QMovie .

PySide2.QtGui.QMovie. updated ( rect )
参数

rect QRect