子对话框如何获取主对话框的信息

子对话框怎么获取主对话框的信息

若主对话框是CParentDlg,子对话框是CChildDlg:

第一步:在子对话框的头文件的类定义中添加:

CDialog *m_pMianDlg;


第二步:在子话框类的定义文件中添加设置函数,并实现:

void set_parent_dlg(CDialog * parnet_dlg);


实现:

void CWarnPage::set_parent_dlg(CDialog * parnet_dlg)
{
	m_pMianDlg =parnet_dlg;
}

第三步:在主对话框创建子对话框时通过set_parent_dlg函数设置主对话框指针.

m_warn_page.Create(IDD_DLG_WARN,&m_tab_mode);
m_warn_page.set_parent_dlg(this);


第四步:在子对话框通过类型强制转转来取主对话框中的信息:

Ctbox_CarSimulatorDlg *parent_dlg =(Ctbox_CarSimulatorDlg *)m_pMianDlg;
if(!parent_dlg->m_connect){
    //...
}