首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

为何TTimer控件不执行事件呢

2013-01-11 
为什么TTimer控件不执行事件呢在函数里写Timer1-Enabledtrue不执行他自己的事件,如果ShowMessage一下就

为什么TTimer控件不执行事件呢
在函数里写Timer1->Enabled=true;不执行他自己的事件,如果ShowMessage一下就执行了,这是什么原理,怎么解决呢?
[解决办法]
Timer的时间间隔是多少?可能要等到下一个时间间隔才触发定时器事件
[解决办法]
应该是在Timer1->Enabled=true;之后没有处理消息,主线程的消息队列阻塞造成的。
你调用一下 Application->ProcessMessages()就好了。


[解决办法]
你可能在不恰当的地方开启时钟了,所以才会出现你说的情况,即时钟不起作用。另外timer事件中不要加延时语句,会造成阻塞的。如果代码不涉密的话,楼主可以把代码贴上来我们看看
[解决办法]
在程序运行的过程中,该调用DLL,就调用DLL。 一个TIMER中最好就只做一件事!

至于要自动关闭DLL弹出的对话框,

要不用Timer,要不用线程, findwindow查找到,然后sendmessage,将它close掉,不就OK了?
[解决办法]
如果可行,将调用DLL的代码放在单独线程中。
[解决办法]
对的,用线程来处理比较耗时的操作

热点排行