如题。
我把它定义成类的成员函数
BOOL CALLBACK CBackDlg::EnumChildFunc(HWND hwnd, LPARAM lParam)
{
return TRUE;
}然后在按钮事件处理中调用
LPARAM lParam;
::EnumChildWindows(h, EnumChildFunc, lParam);结果出现下面的错误:
error C2664: 'EnumChildWindows' : cannot convert parameter 2 from 'int (struct HWND__ *,long)' to 'int (__stdcall *)(struct HWND__ *,long)'
请问是什么原因,该怎么做呢?谢谢
我把它定义成类的成员函数
BOOL CALLBACK CBackDlg::EnumChildFunc(HWND hwnd, LPARAM lParam)
{
return TRUE;
}然后在按钮事件处理中调用
LPARAM lParam;
::EnumChildWindows(h, EnumChildFunc, lParam);结果出现下面的错误:
error C2664: 'EnumChildWindows' : cannot convert parameter 2 from 'int (struct HWND__ *,long)' to 'int (__stdcall *)(struct HWND__ *,long)'
请问是什么原因,该怎么做呢?谢谢
函数中的h是在前面得到的,我没贴出来
用static试试
不知道
http://community.csdn.net/Expert/topic/2757/2757797.xml?temp=.4784357
如用BCB可用__closure 关键字,VC不支持,只能用全局或静态的
如果要把回调函数定义为成员函数,则必须是静态的.并且在调用时要这样调用
::EnumChildWindows(h, CBackDlg::EnumChildFunc, lParam);