我用 MFC 建了一个单文档的程序;
并自己添加了两个从CFormView继承的类 ViewA 和 ViewB;
ViewA有一个成员 name,在其ViewA自身的函数里给name赋值.问题:
然后我想在 ViewB 的一个 函数里 调用 ViewA 的成员 name,
我该如何办?我曾经尝试用Doc类 作为 之间媒介,在Doc类里定义一个变量nameDoc,
在ViewA里给nameDoc赋值,ViewB里得到Doc类里的nameDoc的值,
但是 我得不到从ViewA类赋的值,可能 开始就没有写进去.
不知道怎么 关联 ViewA 和 Doc 类?
并自己添加了两个从CFormView继承的类 ViewA 和 ViewB;
ViewA有一个成员 name,在其ViewA自身的函数里给name赋值.问题:
然后我想在 ViewB 的一个 函数里 调用 ViewA 的成员 name,
我该如何办?我曾经尝试用Doc类 作为 之间媒介,在Doc类里定义一个变量nameDoc,
在ViewA里给nameDoc赋值,ViewB里得到Doc类里的nameDoc的值,
但是 我得不到从ViewA类赋的值,可能 开始就没有写进去.
不知道怎么 关联 ViewA 和 Doc 类?
解决方案 »
- 读取配置文件 是放在内存中 还是每次都读取
- MFC中SDI窗口刷新问题
- 挂接api 的问题, 100分求高手指点
- 各位大虾请进,有问题请教啊
- 我调用DLL的程序,总是弹警告.哪里的问题?
- 编译出错,有谁能解
- 一个MFC单文档程序(创建一个符合导线选点及计算边长和方位角、点坐标和转折角的MFC单文档程序)
- 几个线程同时访问(读)一个全局资源有没有问题?
- 有关FtpFileFind的一个问题,帮帮忙啊!
- Debug/WinHook.dll : fatal error LNK1169: one or more multiply defined symbols found
- [100]金山毒霸2005-------开机登入系统之前/或者“注销”时就能显示出来程序图标
- 网络地址问题
是通过GetDocument()得到的指针操作的吗?
View在Create的时候连接Document了吗?
视图里有GetDocument()能得到文档指针,就可以访问文档的公有成员了(ViewA可以修改nameDoc);(当nameDoc被修改了)文档中调用UpdateAllViews()可以通知所有视图,每个视图通过OnUpdate()响应文档的修改通知(ViewB在该函数中获取nameDoc变量)
手动关联或分割视图也可以采用以上方法
ViewA 和 ViewB 都是在MFC框架生成之后才添加进去的。也就说 这两个类并没有和Doc类关联起来。
然后在ViewA 里定义一个ViewB 类指针,
并在ViewA的那个函数里 通过ViewB 类指针调用ViewB 的函数。ViewA.name就通过形参传过去了,
在调试过程中,发现值 是已经传过去了,但是执行却出现了错误。