CStatic::Create 方法中this指针为空怎么回事
BOOL Create( LPCTSTR lpszText, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID = 0xffff );
上面是MSDN中的原型
我的是这样的
CStaticPic* myStatic;//CStaticPic继承CStatic类
void CDIAArtwoek:: bigpicshow()
{
myStatic = new CStaticPic[classarray.size()];
myStatic[i].Create( NULL,WS_EX_TRANSPARENT|WS_CHILD|WS_VISIBLE|WS_TABSTOP|SS_BITMAP|SS_NOTIFY , CRect(nx,30,100,100),this, IDC_PICTURE0+i)
//Create返回0,创建失败。this指针是0(this 0x0012ea40 {CDIAArtwoek hWnd=0x00000000})
。。。。。
。。。
}
我第一遍调用时this指针有(this 0x00386378 {CDIAArtwoek hWnd=0x0005085c})是在本类里调用的
第二次当我在控件类响应函数中用这CDIAArtwoek:: bigpicshow()方法是this就变0了,像上面那样
上面是MSDN中的原型
我的是这样的
CStaticPic* myStatic;//CStaticPic继承CStatic类
void CDIAArtwoek:: bigpicshow()
{
myStatic = new CStaticPic[classarray.size()];
myStatic[i].Create( NULL,WS_EX_TRANSPARENT|WS_CHILD|WS_VISIBLE|WS_TABSTOP|SS_BITMAP|SS_NOTIFY , CRect(nx,30,100,100),this, IDC_PICTURE0+i)
//Create返回0,创建失败。this指针是0(this 0x0012ea40 {CDIAArtwoek hWnd=0x00000000})
。。。。。
。。。
}
我第一遍调用时this指针有(this 0x00386378 {CDIAArtwoek hWnd=0x0005085c})是在本类里调用的
第二次当我在控件类响应函数中用这CDIAArtwoek:: bigpicshow()方法是this就变0了,像上面那样
作者: m372897527 发布时间: 2011-06-16
CDIAArtwoek是个什么类?
作者: VisualEleven 发布时间: 2011-06-16
WS_EX_TRANSPARENT是扩展样式,如果要指定必须用CreateEx
作者: kyotrue 发布时间: 2011-06-16
class CDIAArtwoek : public CDialog
作者: m372897527 发布时间: 2011-06-16