Q_ENUMS в PyQt4 - PullRequest
       17

Q_ENUMS в PyQt4

5 голосов
/ 14 октября 2011

Я бы хотел использовать средства перечисления Qt.Я видел в документации модуля QtCore есть макрос Q_ENUMS, но я не знаю и информации, как его использовать.

1 Ответ

5 голосов
/ 14 октября 2011

В python (и PyQt) способ создания перечисления выглядит так:

class MyEnum(object):
    One = 1
    Two = 2
    Three = 3

Если вам нужно больше функциональности, пожалуйста, дайте больше информации о том, что вы пытаетесь сделать.

EDIT

Глядя на документацию для QAbstractSocket.stateChanged Я вижу, что это относится к "Создание пользовательских типов Qt". Мне не известно о необходимости регистрации метатипов в PyQt4, поэтому все, что вам нужно сделать, чтобы использовать этот сигнал, это подключить его к соответствующему обработчику:

class Socket(QTcpSocket):
    def __init__(self):
        QTcpSocket.__init__(self)
        self.stateChanged.connect(self.handleStateChanged)

    def handleStateChanged(self, state):
        print state
...