You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PySide中QState.assignProperty调用报错问题求助

QState在PySide中调用assignProperty报错的问题

我有一个使用QState的示例,在PyQt5中可正常运行,但在PySide2/PySide6中执行时出现以下错误:

Traceback (most recent call last):
    File ".../qstate-error.py", line 16, in <module>
        state1.assignProperty(widget, b'test', 1)
TypeError: 'PySide2.QtCore.QState.assignProperty' called with wrong argument types:
    PySide2.QtCore.QState.assignProperty(QWidget, bytes, int)
Supported signatures:
    PySide2.QtCore.QState.assignProperty(PySide2.QtCore.QObject, bytes, typing.Any)

因工作要求必须使用PySide,无法切换到PyQt5。我已尝试PySide2和PySide6,均出现该错误,但看到有明确提及PySide的相关问题,说明该功能应可正常工作。想请教:QState是否需要特殊配置,还是我的构建环境存在问题?我的环境为Rocky 8、Python 3.9.16。

报错的参考示例代码如下(该代码在PyQt5中正常运行):

try:
    from PySide2.QtWidgets import QApplication, QWidget
    from PySide2.QtCore import QState
except ImportError:
    from PyQt5.QtWidgets import QApplication, QWidget
    from PyQt5.QtCore import QState


if __name__ == '__main__':

    app = QApplication([])
    widget = QWidget()
    state1 = QState()
    state1.assignProperty(widget, b'test', 1)
    widget.show()

    app.exec_()

内容的提问来源于stack exchange,提问作者Edward Spencer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 23:31:06