不能将参数1从“void (CDC *,CPrintInfo *,void *)”转换为“DRAWFUN”?????
class CF : public CFrameWnd
{public:
CF(DRAWFUN pDraw,CWnd*pOldW,CWnd* pCallW,BOOL bDirect,LPCTSTRstTitle=NULL);
}
void Drawf(CDC* pDC,CPrintInfo* pInfo,void* pVoid=NULL);
void CStatDialog::OnBnClickedButton2()
{
m_PreFrame = new CF(Drawf,this,this,FALSE);//编译时说不能将参数1从“void (CDC *,CPrintInfo *,void *)”转换为“DRAWFUN”。到底是怎么回事那?这段程序在别人的代码里是可以用的,我拿过来以后就不行了。
m_PreFrame->ShowWindow(SW_SHOW);
m_PreFrame->UpdateWindow();
}
void Drawf(CDC* pDC,CPrintInfo* pInfo,void* pVoid)
{
((CStatDialog*)pVoid)->OnPrint(pDC,pInfo);
}
z在stdafx。h中定义:
typedef void(*DRAWFUN)(CDC* pDC,CPrintInfo* pInfo,void* pVoid=NULL);