免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2564 | 回复: 1
打印 上一主题 下一主题

如何处理gtk以外的对象的事件? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-09-26 23:02 |只看该作者 |倒序浏览
单进程, 不使用线程,

gtk_main()的时候是在不停地处理gtk的事件,
那么程序里额外加入的对象的事件该如何处理呢?

比如一个socket或更复杂的对象 (不使用gtk socket),
他也类似gtk的架构:
一个对象,有很多事件,然后也有一个类似gtk_main()的函数class_main()来处理事件,
且事件不是gtk里的事件,


调用这个class_main()就没办法执行到gtk_main
先调用gtk_main就没办法执行到class_main()

有没有办法把这个class做成一个gtk的组件, 然后让gtk_main带动class_main() ?

谢谢!

论坛徽章:
0
2 [报告]
发表于 2009-09-28 14:25 |只看该作者
我一般采用两个方法。

一,用一个超时事件。比如g_timeout_add (10, my_main, my_arg),这样,10毫秒过后,就执行了自己的main。
二,用一个单独的线程。g_thread_new一个线程出来做自己的main的事情。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP