3,248
社区成员




type=new CTypeDlg();
type->Create(IDD_TYPEDIALOG,this);
type->ShowWindow(SW_SHOW);
[quote=引用 6 楼 q_orange2 的回复:] [quote=引用 5 楼 sd__q 的回复:] [quote=引用 3 楼 q_orange2 的回复:] 不管我用什么办法将type置为空,再次调用show函数显示时。type都不为空了,这是什么原因呢if(type==NULL) { MessageBox(_T("空")); type=new CTypeDlg(); type->Create(IDD_TYPEDIALOG,this); type->ShowWindow(SW_SHOW); type->MoveWindow(x,y,530,400); } else { MessageBox(_T("不为空")); }
delete this;
type = null;
[/quote]type是在接口函数里面定义的,不是在对话框类里面的,。这样好像不行。[/quote]定义一个接口的指针,通过指针操作[/quote]额,还是不太明白。。[quote=引用 5 楼 sd__q 的回复:] [quote=引用 3 楼 q_orange2 的回复:] 不管我用什么办法将type置为空,再次调用show函数显示时。type都不为空了,这是什么原因呢if(type==NULL) { MessageBox(_T("空")); type=new CTypeDlg(); type->Create(IDD_TYPEDIALOG,this); type->ShowWindow(SW_SHOW); type->MoveWindow(x,y,530,400); } else { MessageBox(_T("不为空")); }
delete this;
type = null;
[/quote]type是在接口函数里面定义的,不是在对话框类里面的,。这样好像不行。[/quote]定义一个接口的指针,通过指针操作type是你调用方new出来的,因此在你ocx响应关闭的时候回传给调用方一个信息,然后调用方delete
[quote=引用 3 楼 q_orange2 的回复:] 不管我用什么办法将type置为空,再次调用show函数显示时。type都不为空了,这是什么原因呢if(type==NULL) { MessageBox(_T("空")); type=new CTypeDlg(); type->Create(IDD_TYPEDIALOG,this); type->ShowWindow(SW_SHOW); type->MoveWindow(x,y,530,400); } else { MessageBox(_T("不为空")); }
delete this;
type = null;
[/quote]type是在接口函数里面定义的,不是在对话框类里面的,。这样好像不行。不管我用什么办法将type置为空,再次调用show函数显示时。type都不为空了,这是什么原因呢if(type==NULL) { MessageBox(_T("空")); type=new CTypeDlg(); type->Create(IDD_TYPEDIALOG,this); type->ShowWindow(SW_SHOW); type->MoveWindow(x,y,530,400); } else { MessageBox(_T("不为空")); }
delete this;
type = null;
if(type==NULL)
{
MessageBox(_T("空"));
type=new CTypeDlg();
type->Create(IDD_TYPEDIALOG,this);
type->ShowWindow(SW_SHOW);
type->MoveWindow(x,y,530,400);
}
else
{
MessageBox(_T("不为空"));
}
ocx响应关闭时,提交一个事件