VC对话框之间如何传递信息???

我的一个对话框是这样实现的voidCNo1Dlg::OnOK(){CNo2Dlgdlg;CNo2Dlg*pdlg=newCNo2Dlg();pdlg->Create(ID... 我的一个对话框是这样实现的
void CNo1Dlg::OnOK()
{
CNo2Dlg dlg;
CNo2Dlg *pdlg=new CNo2Dlg();
pdlg->Create(IDD_DIALOG2,this);
pdlg->ShowWindow(SW_SHOW);
CDialog::OnOK();
}
第2个对话框是通过对话框1上的BUTTON1按键打开的程序如下:

void CNo2Dlg::OnButton1()
{
CNo3Dlg dlg;
CNo3Dlg *pdlg=new CNo3Dlg();
pdlg->Create(IDD_DIALOG3,this);
pdlg->ShowWindow(SW_SHOW);
}
现在我想再2对话框上通过一个按键将在对话框2上读取的信息显示到对话框1的EDIT框。其中文件读取函数取下:
CString strSub;
CStdioFile myFile;
CFileException fileException;
if(myFile.Open(m_strFileName,CFile::modeRead),&fileException)
{
CString strContent;
int order=0;
while(myFile.ReadString(strContent))
{
if(1==order)
{
AfxExtractSubString(strSub, (LPCTSTR)strContent, 0, ',');
//AfxMessageBox(strSub);
}
order=order+1;
}
}
else
{
TRACE("Can't open file");
}

myFile.Close();
我的第一个对话框创建的类是 CNo2Dlg,我的第二个对话框创建的类是 CNo3Dlg。
求告诉怎么实现,网上查了好多,说传递父类指针,看了好久,没懂,我新手一个,求说详细点,谢谢,一共只有50分,全给了
展开
 我来答
hyqhero
2012-09-23 · 超过18用户采纳过TA的回答
知道答主
回答量:77
采纳率:0%
帮助的人:43.5万
展开全部
方法很多,我给你一中最简单的方法。
在CNo2Dlg.CPP中定义个全局变量,CString strMSG;
在CNo3Dlg.CPP中引用这个全局变量,extern CString strMSG;
在第二个对话框读完文件后,将要传递的字符串赋值到strMSG,然后给第一个对话框发一个消息,让他显示一下即可。
发消息方法会吗?
在CNo2Dlg.H中定义消息#define WM_GETTEXT WM_USER+100
CNo3Dlg.CPP包含这个头文件,然后读完文件SendMessage(第一个对话框句柄, WM_GETTEXT, NULL, NULL);
CNo2Dlg.CPP中加宏ON_MESSAGE(WM_GETTEXT, 处理函数)
具体后面的自己实现,说的太清楚,你印象就不深了。
agi249779470
2012-09-23 · TA获得超过1145个赞
知道答主
回答量:20
采纳率:0%
帮助的人:10.6万
展开全部
在主对话框中声明一个成员变量,在二对话框中的类容赋给这个变量,然后在一对话框中去读取不就完了吗? 为什么要这么麻烦!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我家在天堂寨
2012-09-22 · TA获得超过551个赞
知道答主
回答量:301
采纳率:0%
帮助的人:124万
展开全部
设置对话框1的EDIT控件变量,public的,再在类是 CNo3Dlg包含CNo2Dlg就可以啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式