Как я создаю новый сигнал в pygtk

7
задан Joe Shaw 18 September 2008 в 04:06
поделиться

3 ответа

Можно также определить сигналы в определении класса:

class MyGObjectClass(gobject.GObject):
    __gsignals__ = {
      "some-signal": (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, (object, )),
    }

Содержание кортежа является тем же как тремя последними аргументами gobject.signal_new.

11
ответ дан 6 December 2019 в 11:54
поделиться

При использовании киви, доступного здесь, можно просто сделать:

from kiwi.utils import gsignal

class MyObject(gobject.GObject):
    gsignal('signal-name')
2
ответ дан 6 December 2019 в 11:54
поделиться

Вот то, как:

import gobject

class MyGObjectClass(gobject.GObject):
    ...

gobject.signal_new("signal-name", MyGObjectClass, gobject.SIGNAL_RUN_FIRST,
    None, (str, int))

Где предпоследним аргументом является тип возврата, и последним аргументом является кортеж типов аргумента.

4
ответ дан 6 December 2019 в 11:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: