找回密码
 立即注册
收起左侧

Qt怎么在主窗口中循环调用一个函数去获取信息

5
回复
12391
查看
[复制链接]
累计签到:3 天
连续签到:1 天
来源: 2013-7-20 10:34:51 显示全部楼层 |阅读模式
1Qter豆
我在程序中,需要用到一个Twainj接口协议,需要在主窗口下不断循环读取信息,有些信息是不需要主窗口去处理的。当按下按钮时,可以去读取当前的信息,然后根据读取的信息去执行相应的动作。

请问下,我该如何实现 在主窗口下,不断循环一个函数呢???

最佳答案

查看完整内容

用信号和槽,有数据到来了就发信号,然后在槽里面进行接收处理。
回复

使用道具 举报

累计签到:1571 天
连续签到:1 天
2013-7-20 10:34:52 显示全部楼层
ChickenRun 发表于 2013-7-20 15:04
哦哦。。。如果不是一直不停的在调用,如果这是变成一直在等待信息的进入,又该怎么办?是不是应该用事 ...

用信号和槽,有数据到来了就发信号,然后在槽里面进行接收处理。
回复

使用道具 举报

累计签到:1571 天
连续签到:1 天
2013-7-20 11:02:58 显示全部楼层
这个得看具体情况啊,要一直调用一个函数,一般使用定时器即可完成。这要看你的协议是怎么规定的,读取信息的时间间隔是怎样的。也可以考虑在一个单独线程中进行读取操作。


如果只是当按下按钮的时候才去读取,那么就简单很多了,只需要在按钮单击信号对应的槽中执行读取操作即可。
回复

使用道具 举报

累计签到:3 天
连续签到:1 天
2013-7-20 14:45:45 显示全部楼层
yafeilinux 发表于 2013-7-20 11:02
这个得看具体情况啊,要一直调用一个函数,一般使用定时器即可完成。这要看你的协议是怎么规定的,读取信息 ...


主窗口需要进行这样的一个消息循环,当获取消息时,去别人是否是Twain的消息,然后再进行分别处理。。不知道是该用线程呢,还是用定时器呢,或两者都可以???

Ps:它原来是MFC的程序,现在要动手改成Qt的程序,第一次改,而且刚接触Qt不久,思路不是很清晰的那种。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

累计签到:1571 天
连续签到:1 天
2013-7-20 14:57:04 显示全部楼层
ChickenRun 发表于 2013-7-20 14:45
主窗口需要进行这样的一个消息循环,当获取消息时,去别人是否是Twain的消息,然后再进行分别处理。。不 ...

看它这里是一直不停调用GetMessage函数啊,如果是这样就用线程吧!
回复

使用道具 举报

累计签到:3 天
连续签到:1 天
2013-7-20 15:04:53 显示全部楼层
yafeilinux 发表于 2013-7-20 14:57
看它这里是一直不停调用GetMessage函数啊,如果是这样就用线程吧!

哦哦。。。如果不是一直不停的在调用,如果这是变成一直在等待信息的进入,又该怎么办?是不是应该用事件来处理呢??
回复

使用道具 举报

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

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了