如何解决未能在qt快速应用程序中构建图形管道状态
我有一个 qt quick pyside 应用程序。我有一个 question before,但现在有另一个问题。只出现一个空窗口,然后在应用程序窗口中我看到下面的消息。虽然我有另一个 qt quick 应用程序我用c++写的,显示没有问题,显示这个信息!,这个应用在python(pyside6)
我使用 Qt 6.0.2、Python 3.9.2、Qt Creator 4.14.1 和 Pyside6
Failed to create vertex shader: Error 0x80070057: The parameter is incorrect.
Failed to build graphics pipeline state
*main.qml
import QtQuick 2.15
import QtQuick.Window 2.15
import QtQuick.Controls 2.15
Window {
id:mainWindow
width: 1000
height: 580
visible: true
title: qsTr("JooyaTrader")
Rectangle{
width: 152
height: 62
anchors.fill: parent
color: "red"
}
}
main.py
import sys,os
from PySide6.QtGui import QGuiApplication
from PySide6.QtQml import QQmlApplicationEngine
import PySide6
if __name__ == "__main__":
app = QGuiApplication(sys.argv)
engine = QQmlApplicationEngine()
engine.load(os.path.join(os.path.dirname(__file__),"main.qml"))
if not engine.rootObjects():
sys.exit(-1)
sys.exit(app.exec_())
解决方法
问题是因为 Qt Quick 用于渲染的后端对您的情况不起作用,要么是因为缺少库,要么是版本不符合 Qt 的预期。一种解决方案是在“软件”中设置 QT_QUICK_BACKEND,使渲染做到这一点 Qt Quick 2D Renderer:
os.environ["QT_QUICK_BACKEND"] = "software"
app = QGuiApplication(sys.argv)
欲了解更多信息,请阅读Scene Graph Adaptations。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。