怎样将一个Dialog像控件一样显示在另一个Dialog里面?

Garfield 不存在 2005-07-20 05:15:07

在MainDlg的Init里面我

childDlg->Create(IDD_CHILD, this);
childDlg->ShowWindow(SW_SHOW);

然后子dialog是显示出来了,但是没有在MainDlg里面
我想做成好像控件那种效果
就是在MainDlg里面,跟随MainDlg移动而移动

怎样才能做到这种效果?

...全文
64 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
lazio88 2005-07-20
类似TAB控件的使用方法,找一下tab控件的使用方法看看就知道了
回复
AgedBOY 2005-07-20
哟这么一会儿就这么多回帖了?!呵呵,那我得删掉我上一回帖的头一句话了。
回复
AgedBOY 2005-07-20
楼上说什么呢呵呵

只要把你那个名叫“IDD_CHILD”的对话框,设定为Child风格(在窗体设计器里就可以设定),马上它就被嵌在你的“MainDlg”里,跑不出来了。

有趣的是除此之外,“IDD_CHILD”看起来和“MainDlg”完全没有区别。所以为了使这个“控件”不被用户关闭,你还得:
1,把Border设定为None;
2,不要放置IDOK和IDCANCEL按钮;
3,重载OnOK和OnCancel两个函数,保留空函数体。
回复
将一个对话框创建成另一个对话框的子窗口,设置样式为没有边框,没有标题栏和系统按钮,然后movewindow到父对话框中制定的位置就行了。

子窗口用非模式对话框
回复
goodboyws 2005-07-20
to fisker0303
他那个哪用得着那么复杂!
回复
goodboyws 2005-07-20
设为WS_CHILD风格即可, 注意重载OnCancel和OnOK为空
回复
fisker0303 2005-07-20
可以用停靠对话框的技术来实现,搜索下吧。
回复
ChenJF206 2005-07-20
子类化,SubclassDlgItem或者SubclassWindow
回复
发帖
界面
创建于2007-09-28

1.5w+

社区成员

VC/MFC 界面
申请成为版主
帖子事件
创建了帖子
2005-07-20 05:15
社区公告
暂无公告