MFC OnTimer()方法不起作用

时间:2011-08-09 20:33:13

标签: mfc timer

我创建了一个基于MFC对话框的应用程序,并希望在表单上添加计时器。但事实证明,MFC与.NET窗体不同。

我在messagemap中添加了ON_WM_TIMER()。并添加了CMyDialog :: OnTimer的函数定义(UINT_PTR x) { }

但是我在VS2005中遇到编译器错误。我不知道我做错了什么。 “错误C2509:'OnTimer':成员函数未在'CMyDialog'中声明”

非常感谢帮助。感谢。

2 个答案:

答案 0 :(得分:5)

显然,您忘记在MyDialog.h声明中CMyDialog声明该功能:

afx_msg void OnTimer(UINT_PTR x);

请注意,afx_msg纯粹是提供信息,可以省略。

答案 1 :(得分:2)

ON_WM_TIMER地图宏的文档显示您正在做正确的事情。我唯一能想到的是你已经将afx_msg限定符从函数定义中删除了。

编辑:冒着说明问题的风险,您是否还在类声明中包含了OnTimer函数的原型?