求一个vc里timer的例程

来源:百度知道 编辑:UC知道 时间:2024/05/25 11:13:24
要完整的代码(直接复制到vc里就能运行的代码)。要控制台的哦,不要mfc的。
是要建WIN32 APPLICATION。
例程,例程,我要例程~~~~~~~
小菜不懂,只能模仿,学习~~~~~~
邮箱:tusichong@163.com
四楼的朋友的例程编译不通过,显示“unresolved external symbol _main”不过你的例程对我还是很有帮助的。
三楼的编译通过,就是你了

要点:SetTimer是需要窗口句柄的,但是如果用回调函数,窗口句柄可以设为NULL,但定时器ID就会被忽略。
另一种方法是新建一个窗口用于接收定时器消息。
#include <stdio.h>
#include <windows.h>

void CALLBACK TimerProc(HWND hwnd, UINT message, UINT timerID, DWORD time)
{
MessageBeep(-1);
}

int main(void)
{
MSG msg;

SetTimer(NULL, 0, 1000, TimerProc);
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
KillTimer(NULL, 1);

return 0;
}

下面的代码实现每1/10秒在屏幕上输出字符'a',在vc6与vs2008下调试通过。使用方法:新建win32工程-win32项目-空项目,插入新文件-c++源文件,复制粘贴即可使用。 在vc6下直接可以运行,05或08下按照注释的地方改下就可以了
#include <windows.h>
int row=0,col=0;
LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,

PSTR szCmdLine, int iCmdShow)

{

static TCHAR szAppName[] = TEXT ("HelloWin") ;