LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1060|回复: 3

gtk 信号处理求助

[复制链接]
发表于 2010-3-12 12:10:57 | 显示全部楼层 |阅读模式
我需要自己建立一个信号“multy-touch-event”,做信号处理函数multy_touch(),我已经实现了这个功能 ,发信号使用的是g_**_emit_by_name()函数,
但是现在我遇到一个问题,像gtk自带的一些信号处理函数比如leave—notify—event ,如果返回FALSE的话就自动把信号往上层的控件传,我要自己的信号和信号处理函数有这个功能,但是总是无法实现,不知道哪里出了问题,请求帮助
发表于 2010-3-12 12:30:13 | 显示全部楼层
继承GtkWidget就可以了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-3-12 14:47:09 | 显示全部楼层
Post by realtang;2074859
继承GtkWidget就可以了。


你好,我的这个信号的 g_signal_new  就是写到了 gktwidget.c里面去的

   widget_signals[MULTI_TOUCH_EVENT] =
    g_signal_new (I_("multi-touch-event"),
                  G_TYPE_FROM_CLASS (gobject_class),
                  G_SIGNAL_RUN_LAST,
                  G_STRUCT_OFFSET (GtkWidgetClass, multi_touch_event),
                 // _gtk_boolean_handled_accumulator, NULL,
                  NULL, NULL,
                  _gtk_marshal_BOOLEAN__BOOLEAN,
                  G_TYPE_BOOLEAN, 0,
                  NULL);
是不是这个函数写的有问题阿 ?



还有 发送信号我用的是 g_signal_emit_by_name (GTK_OBJECT (button1), "multi-touch-event",NULL,&ret);然后返回FALSE
button可以接受信号,但是hbox没有办法接受阿   是不是不能用这个函数发阿
   好像就是用的这个函数出了问题
回复 支持 反对

使用道具 举报

发表于 2010-3-12 15:55:37 | 显示全部楼层
accumulator不能为NULL
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表