关于CDockalbePane内创建对话框的有关问题

关于CDockalbePane内创建对话框的问题
自己定义了CDockalbePane的一个子类CDockScan,在 
CDockScan::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if(!m_ScanDlg.Create(IDD_DLG_SCAN,this))
{
TRACE0("未能创建输出选项卡窗口/n");
return -1; // 未能创建
}
m_ScanDlg.ShowWindow(SW_SHOW);
}该函数中创建了一个对话框,使对话框能够停靠
但我想创建几个停靠对话框,那是不是必须创建几个CDockablePane的子类,
也就是说一个对话框必须对应一个CDockablePane吗,那样是不是有点太不人性话了,求大神指教!谢谢了。
------最佳解决方案--------------------
自己设计的问题吧。

你可以自己设计个CDockablePane带对话框指针的构造函数。
把不同的对话框丢进去不就更好了嘛?

这样只要实例化你的自己写的CDockablePane子类就可以了。要几个就new几个
------其他解决方案--------------------
对话框不一定要是DockPane的成员,像这样就行
CDockablePane dockPane1;
CDialogEx dialog1;
dockPane1.Create(...);
dialog1.Create(dialog1.IDD, &dockPane1);
dockPane1.EnableDocking(...);
DockPane(&dockPane1);
------其他解决方案--------------------
好的,我试试,昨天忙,没看到回复,先谢谢了
------其他解决方案--------------------
回复

引用:
对话框不一定要是DockPane的成员,像这样就行
CDockablePane dockPane1;
CDialogEx dialog1;
dockPane1.Create(...);
dialog1.Create(dialog1.IDD, &dockPane1);
dockPane1.EnableDocking(...);
DockPane(&amp……

我怎么按照你的写法,运行后屏幕显示不了,一点击就死机呢,求指导
------其他解决方案--------------------
引用:
自己设计的问题吧。

你可以自己设计个CDockablePane带对话框指针的构造函数。
把不同的对话框丢进去不就更好了嘛?

这样只要实例化你的自己写的CDockablePane子类就可以了。要几个就new几个

你好,能具体点吗,刚学习这方面的知识,不太懂,求指导
------其他解决方案--------------------
就是CDockablePane子类多写个带Dialog参数的构造函数

然后在构造函数中,实现Create,然后可以根据自身Dialog的特点再强转类型
------其他解决方案--------------------
引用:
就是CDockablePane子类多写个带Dialog参数的构造函数

然后在构造函数中,实现Create,然后可以根据自身Dialog的特点再强转类型

好的,我试试啊,谢谢了
------其他解决方案--------------------
引用:
就是CDockablePane子类多写个带Dialog参数的构造函数

然后在构造函数中,实现Create,然后可以根据自身Dialog的特点再强转类型


问题解决了,但有几点要改一下:
1、在构造函数两个参数,一传对话框类指针,二、传对话框ID
2、我在构造函数中实现Create报错,我把Create放在CDockablePane子类的OnCreate函数中,
3、要加上OnSize()
不过仍然谢谢你。分送给你了