我正试图用M1(ooph!(编译一个在MacOs(Monterey(下为Python2编写的Python应用程序。
- 我使用的不是Python 2,而是Python 3(3.8.9(
- 代替QT5,我必须使用QT6(QT5拒绝安装不同的pip版本和不同版本的QT5(
具有替换行,如from PyQt5 import QtCore
到from PyQt6 import QtCore
,我最终在尝试启动应用程序时遇到了以下错误:
File "pyjtt_res_rc.py", line 14407, in qInitResources
QtCore.qRegisterResourceData(0x01, qt_resource_struct, qt_resource_name, qt_resource_data)
AttributeError: module 'PyQt6.QtCore' has no attribute 'qRegisterResourceData'
根据评论,这个文件是一个# Resource object code
,基本上包含
from PyQt6 import QtCore
qt_resource_data = b"
x00x00x15x46
....
"
def qInitResources():
QtCore.qRegisterResourceData(0x01, qt_resource_struct, qt_resource_name, qt_resource_data)
def qCleanupResources():
QtCore.qUnregisterResourceData(0x01, qt_resource_struct, qt_resource_name, qt_resource_data)
qInitResources()
我相信QT6中发生了一些变化,现在我必须使用其他属性,或者这些属性现在位于其他模块中。
有什么想法吗?
资源控制模块已从QT6中删除。从代码中弃用这两个函数,并删除对qInitResources((的额外调用。一切都会成功的。