如何在 MFC 对话框中创建一个嵌入到父对话框中的子对话框

xunhangchengwen 2009-05-05 03:52:49
如何在 MFC 对话框中创建一个嵌入到父对话框中的子对话框,并且放到指定位置
...全文
558 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
bluevox3000 2009-05-29
  • 打赏
  • 举报
回复
找到经典的解法了。谢谢楼上各位
tianya0609 2009-05-10
  • 打赏
  • 举报
回复
学习
bluevox3000 2009-05-10
  • 打赏
  • 举报
回复
确认使用中。如果需要更改切换对话框,就使用隐藏?
bragi523 2009-05-07
  • 打赏
  • 举报
回复
让父窗口传给你个坐标
然后就create
下同三楼
feng19852007 2009-05-07
  • 打赏
  • 举报
回复
简单点就是在窗口资源编辑中,指定窗口样式为下层。。
oldnwind 2009-05-07
  • 打赏
  • 举报
回复
向1/2/9楼学习!
gxhzippo 2009-05-05
  • 打赏
  • 举报
回复
在父对话框cpp文件中添加头文件
#include "XXXDlg.h"
initiative_gj 2009-05-05
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 AAa_tnT 的回复:]
在父对话框头文件 申明CXXXDlg m_Dlg

[/Quote]
CXXXDlg中XXX是指子框类名吗?怎么一申明就出错?
Ei 2009-05-05
  • 打赏
  • 举报
回复
在父对话框头文件 申明CXXXDlg m_Dlg
在OnInitDialog() 加入以下。
m_Dlg.Create(IDD_DLG, this);
m_Dlg.SetWindowPos(0, 20, 70, 0, 0, SWP_NOSIZE|SWP_SHOWWINDOW);
m_Dlg.ModifyStyle(0, WS_TABSTOP, 0);

initiative_gj 2009-05-05
  • 打赏
  • 举报
回复
这些代码添加到哪里呢?
biweilun 2009-05-05
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 AAa_tnT 的回复:]
把对话框属性设成child
CXXXDlg m_Dlg;
m_Dlg.Create(IDD_DLG, this);
m_Dlg.SetWindowPos(0, 20, 70, 0, 0, SWP_NOSIZE|SWP_SHOWWINDOW);
m_Dlg.ModifyStyle(0, WS_TABSTOP, 0);
[/Quote]
为对话框设立类,派生于CDialog,将这个类的声明头文件include到你的主对话框的cpp文件中。这样你就能使用CXXXDlg了。接着照着上面的代码复制就行了
initiative_gj 2009-05-05
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 AAa_tnT 的回复:]
把对话框属性设成child
CXXXDlg m_Dlg;
m_Dlg.Create(IDD_DLG, this);
m_Dlg.SetWindowPos(0, 20, 70, 0, 0, SWP_NOSIZE|SWP_SHOWWINDOW);
m_Dlg.ModifyStyle(0, WS_TABSTOP, 0);
[/Quote]
请说详细点,谢谢!
lovestxu 2009-05-05
  • 打赏
  • 举报
回复
Create movewindow
FireBirdCN 2009-05-05
  • 打赏
  • 举报
回复
同 3楼 5楼
来蹭饭~~
phoenix_zhou 2009-05-05
  • 打赏
  • 举报
回复
一楼正解
贪玩的老鼠 2009-05-05
  • 打赏
  • 举报
回复
指定位置,可以用movewindow
aa3000 2009-05-05
  • 打赏
  • 举报
回复
LS正解,蹭分
贪玩的老鼠 2009-05-05
  • 打赏
  • 举报
回复
例如,讲CDiaQuestionFind对话框嵌入到A对话框中,可在A对话框初始话中加入
m_pQuestionFindPage=new CDiaQuestionFind;
m_pQuestionFindPage->Create(IDD_DIA_QUESTION_FIND, this);
m_pQuestionFindPage->ModifyStyle(DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU,WS_CHILD);
Ei 2009-05-05
  • 打赏
  • 举报
回复
把对话框属性设成child
CXXXDlg m_Dlg;
m_Dlg.Create(IDD_DLG, this);
m_Dlg.SetWindowPos(0, 20, 70, 0, 0, SWP_NOSIZE|SWP_SHOWWINDOW);
m_Dlg.ModifyStyle(0, WS_TABSTOP, 0);

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧