我建一个最简单的对话框程序,然后利用Winzard主对话框添加WM_TIEMR,生成函数OnTimer()中添加代码如下:
void CTimeDlg::OnTimer(UINT nIDEvent)
{
AfxMessageBox("每1秒");
CDialog::OnTimer(nIDEvent);
}
然后在主对话框初始化函数BOOL CTimeDlg::OnInitDialog()中添加:
SetTimer(0,1000,NULL);
编译成功后把exe文件复制到板子的CF卡中,运行程序没发现弹出“每一秒”这个对话框,分析一下,猜想是没启动定时器。
但为什么没启动呢?(用同样的步骤在VC中可以实现弹出“每一秒”对话框)
是PB生成的系统少添加了什么组件,还是SDK生成时有什么问题?
还是??………………我不知道,您知道问题出在哪吗?告诉我一下,20分相送,谢谢!
我的是FS-ep9315 ARM9板子,操作系统wince 4.2
SetTimer(0,1000,NULL);
改为
SetTimer(1,1000,NULL);
试试看!
这位大哥你可能还没弄清SetTimer这个函数,第一个参数是设置第几个定时器的时候用的标示符(多个定时器同时用的时候),方便后面判断调用哪个定时器~~
nIDEvent
Specifies a nonzero timer identifier. If the hWnd parameter is NULL, this parameter is ignored