[英]How do I create a new signal in pygtk
I've created a python object, but I want to send signals on it.我创建了一个 python object,但我想在上面发送信号。 I made it inherit from gobject.GObject, but there doesn't seem to be any way to create a new signal on my object.我让它继承自 gobject.GObject,但似乎没有任何方法可以在我的 object 上创建新信号。
You can also define signals inside the class definition:您还可以在 class 定义中定义信号:
class MyGObjectClass(gobject.GObject):
__gsignals__ = {
"some-signal": (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, (object, )),
}
The contents of the tuple are the the same as the three last arguments to gobject.signal_new
.元组的内容与gobject.signal_new
的最后三个 arguments 相同。
Here is how:方法如下:
import gobject
class MyGObjectClass(gobject.GObject):
...
gobject.signal_new("signal-name", MyGObjectClass, gobject.SIGNAL_RUN_FIRST,
None, (str, int))
Where the second to last argument is the return type and the last argument is a tuple of argument types.其中倒数第二个参数是返回类型,最后一个参数是参数类型的元组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.