2016-09-06 102 views
0

我在用于播放视频的PyQt + QtMultimedia中创建了应用程序。当QtMultimedia找不到播放视频(在Linux上它的Gstreamer)后端它显示在终端这个错误:如何从Python中的QtMultimedia中捕获错误?

defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer"

然而PyQt的不抛出异常,所以我不能赶上它的蟒蛇。有没有办法如何检测到这个错误并向用户显示一些警告?

回答

0

警告使用qWarning()可能显示,所以你应该能够使用qInstallMessageHandler(在PyQt的的PyQt5.QtCore部分)来捕捉它们。

0

看看the docs

你describle的问题应该可以发出信号:

QMediaPlayer::mediaStatusChanged(QMediaPlayer::MediaStatus status) 

其中状态= QMediaPlayer :: ServiceMissingError

所以,只是一个插槽连接到信号,并对其进行管理。

+0

这是发出'ServiceMissingError'的[error](http://doc.qt.io/qt-5/qmediaplayer.html#error1)信号。 – ekhumoro