我一直在尝试编译PyQt5 helloGL 示例代码。当我尝试构建解决方案时,我得到:
Traceback (most recent call last):
File "C:\Users\\-PATH-\trunk\view\test.py", line 142, in initializeGL
self.gl = self.context().versionFunctions()
ImportError: No module named 'PyQt5._QOpenGLFunctions_4_3_Compatibility'
[Finished in 0.3s]
Run Code Online (Sandbox Code Playgroud)
在我的 PyQt5 文件夹中,我有:
_QOpenGLFunctions_4_1_Core.pyd
_QOpenGLFunctions_2_0.pyd
_QOpenGLFunctions_2_1.pyd
Run Code Online (Sandbox Code Playgroud)
作为我的不同版本的 QOpenGLFunctions 集。我试图搜索所有调用 versionFunctions() 的工作方式,以查看是否可以强制它使用 4_1_Core 文件,但无济于事。在几次重新启动后,我现在重新安装了 PyQt5 两次,看看它是否是奇怪的注册表恶作剧 - 这是在我确保更新我的图形驱动程序以便正确版本的 OpenGL 甚至在我的系统上之后(如果那是某种方式)导致问题)
PyOpenGL 已安装并更新,我也重新安装了它。
我的最终目标是将 OpenGL 渲染器嵌入到 Qt 窗口中,但我没有找到很多关于如何在 python 中执行此操作的示例。我使用 Vispy 有一段时间了,但也遇到了很多问题,因为他们的旧 Qt 示例也不再工作了。