模态对话框、非模态对话框与主对话框之间的数据分别是如何传递的

模态对话框、非模态对话框与主对话框之间的数据分别是怎么传递的?
望有大神给出相关的资料或参考,急急急   在线等  谢谢

------解决方案--------------------
设置parent wnd,或者发送自定义消息。。
------解决方案--------------------
用消息机制吧。。。
------解决方案--------------------
方法很多,比如:
1.各对话框对象之间,相互保存对方的指针或引用(比如通过构造函数传递进去),然后就可以用指针来访问别人的公有变量或方法来实现传递数据。
2.不传递窗口对象指针,只传递需要交换数据的变量的指针或引用。比如主对话框在显示一个模态对话框前,构造这个模态对话框对象,通过构造函数传递进去主对话框的一个成员变量m_str的地址,然后DoModal显示模态对话框,模态对话框对m_str进行赋值,DoModal返回后,主对话框就得到了数据。
还有什么AfxGetApp、AfxGetMainWnd利用起来也会方便很多。

不过这样会造成类的耦合度太高,程序写大了会越来越乱,所以推荐用自定义消息来传递,虽然麻烦点。

或者是起初就对整个程序思考如何设计,把界面和逻辑业务分开,界面只负责获取用户输入和输出结果。
数据的管理、处理都由一个类来完成,该类按照单例模式来写,提供一个全局访问点,这样所有对话框对象都可以直接和它交互、交换数据。