在vc++中怎么用延时函数?超级加急 谢谢!我只是想让一个小图象,从线的一头走到另一头,我想控制它的行驶速度!!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Sleep();while(bEnd){ MoveBmp(); Sleep(); if(GoToEnd) bEnd = TRUE; } http://www.vckbase.com/document/viewdoc/?id=594 使用timer来控制也可以在循环中控制,在循环中用Sleep加上延时! 建议不要使用Sleep,这样会导致整个界面无法响应。(单线程)还是使用SetTimer好,在OnTimer函数中来处理图像的移动。 最简单使用定时器。如果不想使用就使用多线程。然后sleep 楼主这样的情况就是用timer了,如果在另外的线程中画图,才考虑用sleep 即然是延时就用Sleep(xx)吧定时用SetTimer VC++6.0编译通过。先显示"one"一秒后显示"two"#include <windows.h> #include <iostream>using namespace std;int main(void) { cout<<"one"<<endl; Sleep(1000); cout<<"two"<<endl; return 0; } 再来一个例子。#include <windows.h> #include <iostream>using namespace std;int main(void) { for(int n=0;n<=255;n++) { cout<<n<<endl; Sleep(1000); } return 0; } 就让他睡一会吧Sleep(1000); //睡一秒 定时器,或者用sleep(时间) 如果不用多线程的话就用定时器,别在单线程序里用sleep sleep() 不好,类似的功能好像都是用Timer实现的,先定义 SetTimer(1,500,NULL);再在OnTimer(){}响应。 http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=195559===============================================================如何在程序中延时 方法一: 使用sleep函数,如延时2秒,用sleep(2000); 方法二: 使用sleep函数的不利只处在于期间不能处理其他的消息,如果时间太长,就好象死机一样,利用ColeDateTime类和ColeDateTimeSpan类实现延时: ColeDateTime start_time = ColeDateTime::GetCurrentTime(); ColeDateTimeSpan end_time = ColeDateTime::GetCurrentTime()-start_time; While(end_time.GetTotalSeconds() <= 2) { MSG msg; GetMessage(&msg,NULL,0,0); PreTranslateMessage(&msg); End_time = ColeDateTime::GetCurrentTime-start_time; } 这样在延时的时候我们也能够处理其他的消息。 sleep delay都是延时函数 sleep你们大家用过吗.] jethao(蓝沙) ( ) 信誉:100 ;你确定你试过吗;如果你使用到发消息的函数.比如updatadata(false)那么你用sleep根本就不行.如果不用消息函数.那可以实现有两种方法:1.多线程2.定时器 CreateWaitableTimerOpenWaitableTimerSetWaitableTimer 自己写的HtmlView嵌入flash后flash中的输入框不响应回车键! 请教vc2005 unicode下读写二进制文件 WSAAsyncSelect同步顺序问题 我该怎么办? clistctrl单行多行选中问题 明天老师就让交了!!谢谢大家帮帮忙啊! 各位慢走一步,看看这个ZLIB的问题。谢谢了。 关于sendmessage的问题 挑战高手的问题-关于ClassWizard问题 CButton派生类单击响应事件不触发是怎么回事 我怎样才能知道窗体发生变化? ActiveX 中的ADO控件
{
MoveBmp();
Sleep();
if(GoToEnd) bEnd = TRUE;
}
还是使用SetTimer好,在OnTimer函数中来处理图像的移动。
定时用SetTimer
先显示"one"一秒后显示"two"#include <windows.h>
#include <iostream>
using namespace std;
int main(void)
{
cout<<"one"<<endl;
Sleep(1000);
cout<<"two"<<endl;
return 0;
}
#include <windows.h>
#include <iostream>
using namespace std;
int main(void)
{
for(int n=0;n<=255;n++)
{
cout<<n<<endl;
Sleep(1000);
}
return 0;
}
Sleep(1000); //睡一秒
或者用sleep(时间)
类似的功能好像都是用Timer实现的,
先定义 SetTimer(1,500,NULL);
再在OnTimer()
{}
响应。
===============================================================
如何在程序中延时
方法一:
使用sleep函数,如延时2秒,用sleep(2000);
方法二:
使用sleep函数的不利只处在于期间不能处理其他的消息,如果时间太长,就好象死机一样,利用ColeDateTime类和ColeDateTimeSpan类实现延时:
ColeDateTime start_time = ColeDateTime::GetCurrentTime();
ColeDateTimeSpan end_time = ColeDateTime::GetCurrentTime()-start_time;
While(end_time.GetTotalSeconds() <= 2)
{
MSG msg;
GetMessage(&msg,NULL,0,0);
PreTranslateMessage(&msg);
End_time = ColeDateTime::GetCurrentTime-start_time;
}
这样在延时的时候我们也能够处理其他的消息。
delay
都是延时函数
jethao(蓝沙) ( ) 信誉:100 ;你确定你试过吗;如果你使用到发消息的函数.
比如updatadata(false)那么你用sleep根本就不行.
如果不用消息函数.那可以实现有两种方法:1.多线程2.定时器
OpenWaitableTimer
SetWaitableTimer