Qt-PyQt-PySide-Custom-Widgets弃用警告与sip问题修复咨询
解决Qt-PyQt-PySide-Custom-Widgets运行时的两类弃用警告
一、处理Custom_Widgets.Widgets.py的弃用导入警告
这类警告源于Custom_Widgets库内部使用了PyQt/PySide生态中已被淘汰的导入路径或API,可按以下步骤解决:
- 优先升级库版本:在终端执行升级命令,新版本通常会修复此类兼容性问题:
pip install --upgrade Qt-PyQt-PySide-Custom-Widgets - 临时手动修复(不推荐长期使用):若升级后警告仍存在,找到Custom_Widgets的安装目录(可通过
pip show Qt-PyQt-PySide-Custom-Widgets查看位置),打开Widgets.py文件,根据警告提示替换掉弃用的导入语句。例如若提示QDesktopWidget导入路径过时,将from PyQt5.QtGui import QDesktopWidget改为from PyQt5.QtWidgets import QDesktopWidget。
二、处理propiedadesmain.py中sipPyTypeDict()的弃用警告
该警告是sip库版本更新后的兼容性问题,sipPyTypeDict()已被sipPyTypeDictRef()替代,解决方式如下:
- 升级sip库:确保sip版本与当前PyQt5版本适配,执行升级命令:
pip install --upgrade sip - 修改目标文件:找到
propiedadesmain.py中调用sipPyTypeDict()的代码行,直接替换为sipPyTypeDictRef()。注意:如果该文件是Qt Designer自动生成的,后续重新生成UI时会覆盖修改,建议修改Designer的模板配置,或编写简单脚本自动完成替换操作。
额外修复:代码中的逻辑错误
你的main函数里创建的是原生QMainWindow实例,而非自定义的MainWindow类,这会导致你编写的UI初始化、阴影效果等逻辑完全不执行,需修改为:
if __name__ == "__main__": import sys app = QApplication(sys.argv) window = MainWindow() # 替换为自定义的MainWindow类 sys.exit(app.exec_())
内容的提问来源于stack exchange,提问作者Michael Rivera
相关产品推荐
相关产品推荐

