Vs2012的MFC中编写SetTimer函数出错,求解。如下图:

 我来答
bhtzu
2014-12-29 · TA获得超过1.1万个赞
知道大有可为答主
回答量:8088
采纳率:85%
帮助的人:4213万
展开全部
MFC程序的SetTimer,没必要使用回调函数,直接重载WM_TIMER在OnTimer中处理即可,第三参数设置为NULL。
而且,回调函数也不能使用标准类成员函数,因为类成员本身是不能stdcall静态调用的,于回调函数的要求不符。
veket的小号
推荐于2016-02-25 · TA获得超过3371个赞
知道大有可为答主
回答量:3762
采纳率:0%
帮助的人:3987万
展开全部
一下代码经过vc6实测OK
写到对话框类头文件里
static void CALLBACK EXPORT TimerProc(
HWND hWnd, // handle of CWnd that called SetTimer
UINT nMsg, // WM_TIMER
UINT nIDEvent, // timer identification
DWORD dwTime // system time
)
{
CTime t;
switch(nIDEvent)
{
case 100:
::SetWindowText(AfxGetMainWnd()->GetSafeHwnd(), (LPCTSTR)CString(((t=CTime::GetCurrentTime()),t.Format("%H:%M:%S"))));
break;
}
}

写到对话框OnInitDialog里
SetTimer(100, 1000, CMfcdlg2014Dlg::TimerProc);
KillTimer你自己写吧添加对框类析构函数或WM_CLOSE消息响应函数
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式