PyQt4 中的 Q_ENUMS
Posted
技术标签:
【中文标题】PyQt4 中的 Q_ENUMS【英文标题】:Q_ENUMS in PyQt4 【发布时间】:2011-10-13 21:49:35 【问题描述】:我想使用 Qt 的枚举工具。我在 QtCore 模块的文档中看到有一个 Q_ENUMS 的宏,但我不知道如何使用他。
【问题讨论】:
【参考方案1】:在python(和PyQt)中,创建枚举的方式是这样的:
class MyEnum(object):
One = 1
Two = 2
Three = 3
如果您需要更多功能,请详细说明您正在尝试做什么。
编辑
查看QAbstractSocket.stateChanged 的文档,我可以看到它指的是“创建自定义 Qt 类型”。我不知道有任何需要在 PyQt4 中注册元类型,因此使用此信号所需要做的就是将其连接到适当的处理程序:
class Socket(QTcpSocket):
def __init__(self):
QTcpSocket.__init__(self)
self.stateChanged.connect(self.handleStateChanged)
def handleStateChanged(self, state):
print state
【讨论】:
我必须将某个状态变化的信号传递给一个对象,并检查插槽中的数据。在 QTcpSocket 的类中就是这样做的——信号 changeState 谢谢,它让我大开眼界。真的,没有必要注册元类型。我将利用 grant enum(...)以上是关于PyQt4 中的 Q_ENUMS的主要内容,如果未能解决你的问题,请参考以下文章