子对话框修改主对话框的属性和控件

来源:互联网 发布:ip地址与mac地址绑定 编辑:程序博客网 时间:2024/06/05 23:46
假设主对话框叫MainDlg,子对话框叫AccountsDlg,按下列步骤来:
第一步:在主对话框程序创建子对话框函数中: 
   CAccountsDlg dlg(this);//一定要加this,否则楼上几位说的都不可能实现你要求的,this是将MainDlg指针传递给AccountsDlg

第二步:在子对话框头文件中引用主对话框头文件,并添加主对话框指针变量: 
   #include "MainDlg.h" 
  Class CAccountsDlg ::public CDialog
 {
   public:CMainDlg* pParentDlg;  
 }

第三步:在子对话框程序构造函数中: (你该知道什么叫构造函数吧?就是以类名同名的那个函数)
   pParentDlg = (CMainDlg*)pParent;   //这个pParent就是刚才this传递过来的

第四步:在子对话框的任意函数中自由改变主对话框的任意public变量,或调用主对话框的任意public函数
   pParentDlg->variable = xxx;           //子-->主,变量

   yyy = pParentDlg->GetValueFunction(); //主-->子,函数

参考自:http://bbs.csdn.net/topics/300191320

0 0