QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 885|回复: 2

请大家看看这个程序怎么编写(Gtk+/Gnome)

[复制链接]
发表于 2005-1-4 12:43:32 | 显示全部楼层 |阅读模式
程序的功能是从串口接收数据,并显示出来.

GUI是采用Glade编写的,gtk_main( )是捕捉窗口上按钮发出信号的,用于控制向串口发送设置信号,然后就从串口读数,发一次,读一次. 那么这个发送和读入和gtk_main()是并行执行(当然不是严格"并行"), 请问大家该怎么办? 需要使用进程吗?

可以在gtk_main()后面加上一个while (1){...}这样作吗?我觉得程序应该只会运行到gtk_main(),然后就不会往下执行了,直到产生destroy这样的信号终止程序.

不知道我的理解是否正确,请指教.
发表于 2005-1-4 12:59:21 | 显示全部楼层
gtk_main是GTK的主循环,如果gtk_main退出了,GUI就结束了,你在gtk_main之后加一个WHILE(1)程序就会在退出GUI后一直停在WHILE那里。我记得有一个串口调试的程序,也是用GTK做的,你可以到软件下载去搜索一下。
回复

使用道具 举报

发表于 2005-1-4 13:28:31 | 显示全部楼层
gtk_main()是阻塞的,你在gtk_main()后面加while(1)有什么用,你可以在button的clicked事件的回调函数里加入你要做的事情,如果你要做事情要花一定的时间比如10秒,那你最好新开一条线程来做,因为gtk窗口的刷新和响应是要等到回调函数返回后才能继续的,所以回调函数最好是马上就能返回。
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-11-6 19:40 , Processed in 0.064774 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

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