SetTimer具体怎么使用呢?
SetTimer具体怎么使用呢?能不能给个例子讲解一下,具体怎样启动定时器,然后如何判断是否满足情况再调用之后的函数?
请高手不吝赐教,谢谢!
问题点数:20、回复次数:5Top
1 楼hongliqiu(在火中)回复于 2003-09-01 12:55:20 得分 5
TTimer控件中有Enable属性,可以运行时刻修改该属性的值,使定时器启动/停止
Interval属性是定时器时间间隔,单位毫秒。
Ontimer事件,定时器到时间后就调用Ontimer事件中的代码。
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
//add your code here
}
//---------------------------------------------------------------------------
你可以在其他时间中控制TTimer的停/启
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Timer1->Enabled = false; //停止定时器
Timer1->Interval = 500; //设置定时间隔
Timer1->Enabled = true //启动定时器
}Top
2 楼nuaacims(沉底鱼)回复于 2003-09-01 14:21:00 得分 5
TTimer控件就是封装了SetTimer()函数
UINT_PTR SetTimer(
HWND hWnd, // handle to window
UINT_PTR nIDEvent, // timer identifier
UINT uElapse, // time-out value
TIMERPROC lpTimerFunc // timer procedure
);
SetTimer函数有两种触发方式,一种是Callback函数TIMERPROC lpTimerFunc
而TTimer中使用的接受WM_Timer消息的方式...
大部分的时候 TTimer就足够用了 ...Top
3 楼binbin(破坏分子)回复于 2003-09-01 15:04:21 得分 5
用TTimer控件就可以了.
使用SetTimer API函数需要至少一种方法来实现Timer消息响应:
1.指定一个Timer过程.
写一个回调函数作为SetTimer的最后一个参数,在回调函数中处理Timer消息,该函数象OnTimer一样,但是一个普通Windows回调函数,你无法直接使用Form的成员了.
2.不指定Timer过程,那么必须在窗口过程中处理WM_TIMER消息,要做到这一点你必须重载WndProc或用其他方法代替VCL处理消息.
从上面看,还是直接用Timer控件方便些,通过Enabled就可以轻松生成和解除TimerTop
4 楼spcec(zeus)回复于 2003-09-02 00:35:08 得分 0
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
//add your code here
}
//---------------------------------------------------------------------------
当时间到了之后引发执行上面这个函数之后,我发现好像这个事件触发函数中的代码被反复执行了,怎样才能让这个事件中的代码只执行一边然后再转回到原来若鼠标移动则再次开启定时器重新开始新的计时?Top
5 楼hongliqiu(在火中)回复于 2003-09-02 10:53:05 得分 5
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
if (Timer1->Enabled)
{
//add your excute code here
Timer1->Enabled= false; //这样你的代码只能执行一次.
}
}
//-----------Top
相关问题
- Request.ServerVariables("LOGON_USER")具体怎么使用?
- SetTimer的使用
- 怎么使用INSTALLSHIELD??!?!?,具体步骤????急急,谢谢
- 查了一个上午,就是不知道SetTimer怎么使用?
- 我怎么就连接不上sql server呢??使用ado,具体请进...............
- 请问:asp的报表打印能否使用华表,具体怎么用啊
- Shell_NotifyIcon()怎么样响应右击鼠标事件?SetTimer()使用TimeProc怎么调用?
- SetTimer的使用方法
- 使用SetTimer的问题;
- 我需要使用InstallShield向系统添加一个文件DSN,应该用什么函数,具体怎么做?



