|对话框与对话框数据传递|

------------------------------------------------------------------------------------------
|对话框与对话框数据传递|
------------------------------------------------------------------------------------------
MFC程序中不同的对话框类传递数据


如何在MFC中不同的对话框类中传递数据,有两种方式: 


1. 在定义某一个对话框类之后,并且在调用DoModal之前把数据传过去,比如: 
对话框CTest1Dlg有一指针m_p1,对话框CTest2Dlg中有一指针m_p2,可以通过如下方式传递数据,在CTest1Dlg中: 
CTest2Dlg dlg; 
dlg.m_p2 = this->m_p1; 
dlg.DoModal; 


2. 通过全局的数据,这个数据应该是放在CxxApp类中的,比如: 
CMainApp中有一数据m_p3;在其它的对话框中可以这样调用这个数据: 
1,
CMainApp *app = (CMainApp*)AfxGetApp(); 
app->m_p3;
2,
CFrameWnd *pFrame=(CFrameWnd *)(AfxGetApp()->m_pMainWnd);
  CMOfqk0028Doc * pDoc=(CMOfqk0028Doc*)pFrame->GetActiveDocument();
上面说的有可能朋友们看不懂,下面给个简单实现的代码:
   CCellTrackDlg * pDlg = (CCellTrackDlg*)GetParent();//常用
if(pDlg != NULL)
{
m_speed = pDlg->m_posRatio;
m_totle = pDlg->m_totalNum;
        }
在需要使用别的类数据中添加以上代码: m_speed、m_totle是本类的公有成员变量,m_posRatio、m_totalNum是需调用类的公有成员变量,pDlg是父类的指针,即


被调用类的指针。
-------------------------------------------------------------------------------------------
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值