2015-04-01 45 views
0

我有我的主对话框和一些次要的对话框,由Main中的按钮打开。MFC - 从不同对话框访问全局声明的对象

我得到类ABC的对象X声明为主对话框的成员。 我想从任何对话框编辑(获取和设置值)对象X.

我该怎么办?我读了它不可能在全球范围内声明变量(tryed它MyApp.h,或MyApp的类但与重定义链接错误)

是来到我的主,唯一的解决办法是添加到按钮:

CNewDialog newdialog; 
newdialog.A=A; 
newdialog.DoModal(); 
A=newdialog.A; 

它会工作吗?或者还有其他解决方案吗?

另一方面,只有在关闭newdialog之后,主对话框才会有可见的变化,我不想这样做。

+0

只要全局声明其他'A',代码应该工作 - 上面给出的代码放在哪里? – 2015-04-02 06:36:32

回答

0

我会用常用配置工具设计使用单身人士模式来解决你的任务。

+2

什么是**通用配置工具**? – 2015-04-02 06:45:06

+0

这基本上是您的应用程序配置存储。该工具通常实现加载/保存(序列化),参数和属性的获取/设置以及其他配置相关功能。 – 2015-04-02 08:48:43

+0

CCF定义了什么框架? – rrirower 2015-04-02 13:15:57

0

可以通过调用AfxGetMainWnd从任何地方访问主对话框对象。将返回的指针转换为指向主对话框类的指针。