我正在尝试将新的QOpenGLWidget与PySide2一起使用,并在一开始就遇到了此错误。
PySide2: QOpenGLContext' object has no attribute 'functions'
我从c ++转换为文档中最简单的示例: https://doc.qt.io/qtforpython/PySide2/QtWidgets/QOpenGLWidget.html
def initializeGL(self):
ctx = QOpenGLContext.currentContext()
gl = ctx.functions()
gl.glClearColor(1.0, 1.0, 1.0, 1.0)
A使用QOpenGLWidget找不到pyside2的任何示例,但是每个示例都使用QGLWidget,即使仅出于向后兼容而保留它,而使用新的QOpenGLWidget shoudl。据我所知...
有人可以给我展示一个在pyside2中使用python的QOpenGLWidget的良好且最小的工作示例吗?还是我应该使用旧的QGLWidget?
PySide。版本返回:“ 5.6.0〜a1”(可能是Qt版本) python版本:2.7.15
答案 0 :(得分:1)
查看官方存储库中的OpenGL examples之一,似乎您需要首先获取当前上下文。
QOpenGLContext.currentContext().functions()
另一个问题可能是版本,因为5.6已经很老了。您可以尝试使用最新的5.12.0版本吗?