QMovie Class Reference
[QtGui module]
该QMovie类是一个方便的类,用于播放电影的QImageReader。More…
继承QObject。
Types
enum CacheMode { CacheNone, CacheAll }
enum MovieState { NotRunning, Paused, Running }
Methods
__init__ (self, QObject parent = None)
__init__ (self, QIODevice device, QByteArray format = QByteArray(), QObject parent = None)
__init__ (self, QString fileName, QByteArray format = QByteArray(), QObject parent = None)
QColor backgroundColor (self)
CacheMode cacheMode (self)
int currentFrameNumber (self)
QImage currentImage (self)
QPixmap currentPixmap (self)
QIODevice device (self)
QString fileName (self)
QByteArray format (self)
int frameCount (self)
QRect frameRect (self)
bool isValid (self)
bool jumpToFrame (self, int frameNumber)
bool jumpToNextFrame (self)
int loopCount (self)
int nextFrameDelay (self)
QSize scaledSize (self)
setBackgroundColor (self, QColor color)
setCacheMode (self, CacheMode mode)
setDevice (self, QIODevice device)
setFileName (self, QString fileName)
setFormat (self, QByteArray format)
setPaused (self, bool paused)
setScaledSize (self, QSize size)
setSpeed (self, int percentSpeed)
int speed (self)
start (self)
MovieState state (self)
stop (self)
Static Methods
list-of-QByteArray supportedFormats ()
Qt Signals
void error (QImageReader::ImageReaderError)
void finished ()
void frameChanged (int)
void resized (const QSize&)
void started ()
void stateChanged (QMovie::MovieState)
void updated (const QRect&)
Detailed Description
该QMovie类是一个方便的类,用于播放电影的QImageReader。
这个类是用来显示简单的动画没有声音。如果你想显示的视频和媒体内容,使用Phonon多媒体框架来代替。
首先,通过传递一个文件的名称或一个指向创建QMovie对象QIODevice含动画图像格式QMovie的构造函数。您可以致电isValid() ,以检查是否在图像数据是有效的,从电影之前。开始播放影片,通话start( ) 。 QMovie将进入Running状态,并放出started()和stateChanged( ) 。为了得到影片的当前状态,请致电state( ) 。
若要显示影片在您的应用程序,你可以通过你的QMovie对象QLabel.setMovie( ) 。例如:
[QLabel](qlabel.html) label;
QMovie *movie = new QMovie("animations/fire.gif");
label.setMovie(movie);
movie->start();
每当一个新的框架是在电影中使用, QMovie会发出updated( ) 。如果该帧的大小变化,resized()被发射。您可以致电currentImage()或currentPixmap( )来获得当前帧的副本。当影片完成后, QMovie发出finished( ) 。如果播放(即图像文件已损坏)过程中发生任何错误, QMovie会发出error( ) 。
你可以通过调用控制影片的播放速度setSpeed(),它采用原始速度的百分比作为参数。通过调用setPaused (真)暂停电影。 QMovie将进入Paused国家和EMITstateChanged( ) 。如果调用setPaused (假) , QMovie将重新进入Running状态,然后再次开始播放电影。停止播放视频,呼叫stop( ) 。
某些动画格式允许您设置背景颜色。您可以致电setBackgroundColor()来设置颜色,或backgroundColor()来获取当前背景色。
currentFrameNumber()返回在当前帧的序列号。在动画的第一帧具有序列号0。frameCount()返回的帧的总数目在动画中,如果图像格式支持这一点。您可以致电loopCount( )来获得本次电影应该在完成循环之前的数量。nextFrameDelay()返回毫秒为单位的当前帧应该显示的数目。
QMovie可以通过调用被指示动画的帧缓存setCacheMode( ) 。
Call supportedFormats( )对于格式的列表QMovie支持。
Type Documentation
QMovie.CacheMode
这个枚举变量描述了不同的缓存模式QMovie。
Constant | Value | Description |
---|---|---|
QMovie.CacheNone |
0 |
没有帧缓存(默认值) 。 |
QMovie.CacheAll |
1 |
所有的帧缓存。 |
QMovie.MovieState
该枚举描述的不同状态QMovie。
Constant | Value | Description |
---|---|---|
QMovie.NotRunning |
0 |
这部电影没有运行。这是QMovie的初始状态,并且状态后,它进入stop( )被调用或电影结束。 |
QMovie.Paused |
1 |
电影被暂停,并QMovie停止发光updated()或resized( ) 。调用后进入此状态pause( )或setPaused (真) 。当前帧号是蒙了,这部电影将继续与下一帧时unpause()或setPaused (假)被调用。 |
QMovie.Running |
2 |
这部电影正在运行。 |
Method Documentation
QMovie.__init__ (self, QObject parent = None)
该parent的说法,如果不是没有,原因self通过Qt的,而不是PyQt的拥有。
构造一个QMovie对象,通过parent反对QObject的构造。
See also setFileName( )setDevice()和setFormat( ) 。
QMovie.__init__ (self, QIODevice device, QByteArray format = QByteArray(), QObject parent = None)
该parent的说法,如果不是没有,原因self通过Qt的,而不是PyQt的拥有。
构造一个QMovie对象。QMovie将使用读取的图像数据从device,它假定为开放性和可读性。如果format不为空,QMovie将使用的图像格式format对图像数据进行解码。否则,QMovie会尝试猜测的格式。
该parent对象被传递给QObject的构造。
QMovie.__init__ (self, QString fileName, QByteArray format = QByteArray(), QObject parent = None)
该parent的说法,如果不是没有,原因self通过Qt的,而不是PyQt的拥有。
构造一个QMovie对象。QMovie将使用读取的图像数据从fileName。如果format不为空,QMovie将使用的图像格式format对图像数据进行解码。否则,QMovie会尝试猜测的格式。
该parent对象被传递给QObject的构造。
QColor QMovie.backgroundColor (self)
返回电影的背景颜色。如果没有背景色已经被分配,一个无效的QColor返回。
See also setBackgroundColor( ) 。
CacheMode QMovie.cacheMode (self)
[
int QMovie.currentFrameNumber (self)
返回当前帧的序列号。在电影的第一帧的数目是0。
]($docs-qmovie.html#CacheMode-enum)
QImage QMovie.currentImage (self)
See also currentPixmap()和updated( ) 。
QPixmap QMovie.currentPixmap (self)
See also currentImage()和updated( ) 。
QIODevice QMovie.device (self)
返回设备QMovie从读取图像数据。如果没有设备目前已被分配,则返回0 。
See also setDevice()和fileName( ) 。
QString QMovie.fileName (self)
返回的文件的名称QMovie从读取图像数据。如果没有文件名已经被分配,或者如果指定的设备是不是一个文件,一个空QString返回。
See also setFileName()和device( ) 。
QByteArray QMovie.format (self)
返回格式QMovie图像数据进行解码时使用。如果没有指定格式已经被分配,一个空QByteArray中( )返回。
See also setFormat( ) 。
int QMovie.frameCount (self)
返回帧的电影数量。
某些动画格式不支持此功能,在这种情况下,返回0。
QRect QMovie.frameRect (self)
返回的最后一帧的正确。如果没有框架至今尚未更新,无效QRect返回。
See also currentImage()和currentPixmap( ) 。
bool QMovie.isValid (self)
返回True如果影片是有效的(例如,图像数据是可读的,并且所支持的图像格式),否则返回False 。
bool QMovie.jumpToFrame (self, int frameNumber)
跳转到帧号frameNumber。成功时返回TRUE ,否则返回False 。
bool QMovie.jumpToNextFrame (self)
这种方法也是一个Qt槽与C + +的签名bool jumpToNextFrame()
。
跳转到下一帧。成功时返回TRUE ,否则返回False 。
int QMovie.loopCount (self)
返回的次数这部电影将循环完成之前。如果影片只能播放一次(无循环) , loopCount返回0 。如果影片永远循环, loopCount返回-1 。
需要注意的是,如果图像数据是来自一个连续的设备(例如一插座)QMovie如果只能回路的电影cacheMode被设置为QMovie.CacheAll。
int QMovie.nextFrameDelay (self)
返回的毫秒数QMovie更新在动画中的下一帧之前,将等待。
QSize QMovie.scaledSize (self)
[
返回的帧的缩放大小。
这个函数是Qt 4.1中引入。
]($docs-qsize.html)
See also setScaledSize()和QImageReader.scaledSize( ) 。
QMovie.setBackgroundColor (self, QColor color)
对于支持它的图像格式,该函数设置背景颜色为color。
See also backgroundColor( ) 。
QMovie.setCacheMode (self, CacheMode mode)
QMovie.setDevice (self, QIODevice device)
设置当前设备device。QMovie会从电影运行时该设备读取的图像数据。
See also device()和setFormat( ) 。
QMovie.setFileName (self, QString fileName)
载的文件的名称QMovie读取图像数据,以fileName。
See also fileName( )setDevice()和setFormat( ) 。
QMovie.setFormat (self, QByteArray format)
设置格式QMovie解码图像数据时,要会用format。默认情况下,QMovie会尝试猜测的图像数据的格式。
您可以致电supportedFormats( )对于格式的完整列表QMovie支持。
See also format()和QImageReader.supportedImageFormats( ) 。
QMovie.setPaused (self, bool paused)
这种方法也是一个Qt槽与C + +的签名void setPaused(bool)
。
If paused是真的,QMovie将进入Paused状态并放出stateChanged (暂停) ,否则将进入Running状态并放出stateChanged (运行) 。
QMovie.setScaledSize (self, QSize size)
设置缩放帧尺寸为size。
这个函数是Qt 4.1中引入。
See also scaledSize()和QImageReader.setScaledSize( ) 。
QMovie.setSpeed (self, int percentSpeed)
int QMovie.speed (self)
QMovie.start (self)
这种方法也是一个Qt槽与C + +的签名void start()
。
开始播放电影。QMovie将进入Running状态,并开始发光updated()和resized( )作为电影的进展。
If QMovie在Paused状态时,此功能相当于调用setPaused (假) 。如果QMovie已经在Running状态,这个函数什么都不做。
See also stop()和setPaused( ) 。
MovieState QMovie.state (self)
See also MovieState和stateChanged( ) 。
QMovie.stop (self)
这种方法也是一个Qt槽与C + +的签名void stop()
。
停止该影片。QMovie进入NotRunning状态,并停止发出updated()和resized( ) 。如果start( )再次被调用时,影片将从头开始重新启动。
If QMovie已经在NotRunning状态,这个函数什么都不做。
See also start()和setPaused( ) 。
list-of-QByteArray QMovie.supportedFormats ()
传回的图像格式所支持的列表QMovie。
这个函数是Qt 4.1中引入。
See also QImageReader.supportedImageFormats( ) 。
Qt Signal Documentation
void error (QImageReader::ImageReaderError)
这是该信号的默认超载。
这个信号是由发射QMovie当错误error在播放过程中发生的。QMovie将停止播放电影,并输入QMovie.NotRunning状态。
void finished ()
这是该信号的默认超载。
当影片结束这个信号被发射。
See also QMovie.stop( ) 。
void frameChanged (int)
这是该信号的默认超载。
这个信号被发射时的帧编号变更为frameNumber。您可以致电currentImage()或currentPixmap( )来获取帧的副本。
这个函数是Qt 4.1中引入。
void resized (const QSize&)
这是该信号的默认超载。
当当前帧已经被改变到这一信号被发射size。这种效果有时用于动画作为替代更换帧。您可以致电currentImage()或currentPixmap( )来获取更新的帧的副本。
void started ()
这是该信号的默认超载。
之后此信号被发射QMovie.start( )被调用,并QMovie已进入QMovie.Running状态。
void stateChanged (QMovie::MovieState)
这是该信号的默认超载。
每当这个信号被发射的电影的状态发生改变。新的状态被指定state。
See also QMovie.state( ) 。
void updated (const QRect&)
这是该信号的默认超载。
这个信号被发射时的RECTrect在当前帧中已被更新。您可以致电currentImage()或currentPixmap( )来获取更新的帧的副本。