我有以下代码:
if __name__ == '__main__':
os.environ["QT_QUICK_CONTROLS_STYLE"] = "Material"
app = QGuiApplication(sys.argv)
engine = QQmlApplicationEngine()
engine.load('./QML/main.qml')
if not engine.rootObjects():
sys.exit(-1)
sys.exit(app.exec_())
您可以看到,如果 `engine.load` 失败,我将只会看到一个“-1”退出代码,没有任何关于为什么失败以及错误发生的详细说明。如何在Python控制台中打印QML错误信息?
使用
QQuickView
而不是 QQmlApplicationEngine 时有一种解决方法,并在这个 帖子 中进行了描述,但我想知道是否可以为 QQmlApplicationEngine 实现类似的功能?
QQmlEngine::setOutputWarningsToStandardError(bool enabled)
设置为 true,并连接到warnings
信号... 到目前为止还没有成功... - Curtwagner1984