PySide:'PySide.QtCore.Signal“”object没有属性“emit”

2024-04-27 19:33:51 发布

您现在位置:Python中文网/ 问答频道 /正文

使用以下代码,我在尝试发出信号时遇到错误('PySide.QtCore.Signal' object has no attribute 'emit'):

#!/usr/bin/env python

from PySide import QtCore

class TestSignalClass(QtCore.QObject):
    somesignal = QtCore.Signal()

    def speak_me(self):
        self.speak.emit()
    def __init__(self):
        try:
            self.somesignal.emit()
        except Exception as e:
            print("__init__:")
            print(e)

t = TestSignalClass()

我能做些什么来解决这个问题?在


Tags: 代码selfsignalobjectinitdef错误pyside
1条回答
网友
1楼 · 发布于 2024-04-27 19:33:51

这里的问题是,尽管类正确地继承了QtCore.QObject,但它不调用父级的构造函数。这个版本运行良好:

#!/usr/bin/env python

from PySide import QtCore

class TestSignalClass(QtCore.QObject):
    somesignal = QtCore.Signal()

    def speak_me(self):
        self.speak.emit()
    def __init__(self):
        # Don't forget super(...)!
        super(TestSignalClass, self).__init__()
        try:
            self.somesignal.emit()
        except Exception as e:
            print("__init__:")
            print(e)

t = TestSignalClass()

相关问题 更多 >