永发信息网

MFC编程之子对话框

答案:1  悬赏:70  手机版
解决时间 2021-05-15 06:00

我通过MFC编程,想实现以下过程:
在主对话框的某个区域插入3个子对话框,并在子对话框中添加控件,然后通过主对话框上的Button来控制子对话框的现实和隐藏。
有点类似TabCtrl控件的功能,但我不喜欢使用TabCtrl控件。
请问各位达人,我应该怎么实现子对话框的插入?

最好给些源码!

最佳答案

在resourceview选项卡中,右击dialog文件夹选择insert dialogue选项即可。
在主对话框的*Dlg.h顶部加入#include“子对话框.h”;在public:
CShiDlg(CWnd* pParent = NULL); // standard constructo
C子对话框 myd;
在*Dlg.cpp的按钮单击事件中加入 myd.DoModal();就行了 。


MFC单文档程序:
CSPView类 中有2个变量: CDataDialog *m_pDataDlg;//注class CDataDialog:public CDialog{
CPasswordDialog *m_pPasswordDlg;//注class CDataDialog:public CDialog
建立2个子窗口时,都把父窗口设为当前窗口。
if(NULL==m_pDataDlg) //have not created the dialog box
{
m_pDataDlg = new CDataDialog(m_pPointSet,m_pArcSet);
m_pDataDlg->Create(IDD_INPUT_DATA,this);//父窗口为当前窗口
}
如今:
void CPasswordDialog::OnBnClickedOk()
{
UpdateData(TRUE);
if(SafetyConfirm())
{
CSPView * view=(CSPView *) GetParent();
assert(view);
view->GetDataDialog();
assert( (view->m_pDataDlg) ); //正常。
view->m_pDataDlg->ShowWindow(SW_SHOW);
}
OnOK();
}

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
新邵县如意酒家(新田铺镇国土资源中心所西)地
It is diffcult for him to do it 谓语是is d
求一国F 毁灭SS用魅魔的天赋?贴个图
镇平县河南省镇平县个体劳动者协会这个地址怎
人生到底怎样才算幸福?
描述白色纯洁的诗句,形容白荷花的诗句
郁闷…手机的摄像头摔伤了…要多久才能修好?
我的视频对方为什么听不到我的声音呢
qq炫舞为什么创建了任务以后就没反应了呢?该
雨湖区湘潭市中心医院公共卫生临床医疗中心这
孙字的来历是什么简单些30字
GST-LD-KZ014/12多线制主板多少钱啊?
石王要强化吗?
老虎头上找虱子歇后语,关于老虎头上捉虱子的
为什么人会犯错后总会说是因为太年轻?
推荐资讯
我的电脑网速断断续续为什么?
霸气的生日祝福给兄弟,兄弟过生日霸气说说
樊城区集迦(襄阳金街店)怎么去啊,谁知道地址
云溪区云溪乡哪位知道具体地址啊
哪里可以买的到草酸!
赫山区益阳市农村商业银行(上湖分理处)怎么去
河南省卫生专业骨科副主任医师分数线
剑3关于洗修为的?
那个乐器 极简单有实用? 要是你们学一个乐器
汕头大学2010年暑假什么时间开学??
老河口市襄阳市引丹工程管理局水政监察大队地
大卷发平时怎么护理。
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?