荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: oopilix (AutoBBS(OOP &o){while(1){o.login();}}), 信区: Visual
标  题: [合集]象vc界面中的不同view如何通讯呢?
发信站: 荔园晨风BBS站 (Fri Sep  5 11:43:19 2003), 站内信件

littlebao (爱拼才会赢) 于Sat Aug 16 18:10:05 2003提到:

比如说workplace的view是和文档类相连的,
的view类可以 调用workplace的view的函数,但是现在反过来怎么做我就不知道了,


oopilix (优雅的) 于Sat Aug 16 18:14:55 2003提到:

可以通过output的View调用workspace的View,只要获得workspace
View的指针,需要的是声明一个workspace View的指针变量。反过来怎么不行的阿?

还有MFC中有个View的遍历的函数,是不是可以通过那个函数。

比如说workplace的view是和文档类相连的,
的view类可以 调用workplace的view的函数,但是现在反过来怎么做我就不知道了,


littlebao (爱拼才会赢) 于Sat Aug 16 18:32:21 2003提到:

现在就是不知道怎样在output的view里获得另一个view的指针
那个遍历是同属于一个document的才行吧?


oopilix (优雅的) 于Sat Aug 16 18:57:37 2003提到:

嗯,你的两个view是同个性质的?同一个类的?
你不是说可以在output的view获得workspace的指针了吗?
把头文件包含进来,在当前的view声明一个另外一个view的指针。
遍历应该有在整个frame内的都可以的。

或者只能自己发送消息了。

现在就是不知道怎样在output的view里获得另一个view的指针
那个遍历是同属于一个document的才行吧?


littlebao (爱拼才会赢) 于Sat Aug 16 19:22:40 2003提到:

两个view是属于不同类的而且发送消息也要指针
因为workplace 的view是和文档类相连的所以在output里的view
可以通过document间接地获得workplace view的指针,而反过来
output的view没有和document相连所以就不知道怎么做了



oopilix (优雅的) 于Sat Aug 16 19:26:35 2003提到:

那能不能使output得View也也和document相连,但不接受document数据呢?
两个view是属于不同类的而且发送消息也要指针
因为workplace 的view是和文档类相连的所以在output里的view
可以通过document间接地获得workplace view的指针,而反过来
output的view没有和document相连所以就不知道怎么做了



littlebao (爱拼才会赢) 于Sat Aug 16 19:34:55 2003提到:

这个我试过但没有成功,也不知道那里出错了,因为界面部分的代码
框架我也没弄清楚


oopilix (优雅的) 于Sat Aug 16 19:40:19 2003提到:

你先新建个工程,里面就放上2个Frame,2个View,解决
最简单的通讯问题先罗。用::GetWindow();
这个我试过但没有成功,也不知道那里出错了,因为界面部分的代码
框架我也没弄清楚


littlebao (爱拼才会赢) 于Sat Aug 16 20:55:21 2003提到:

还是不行啊,又不知道那里错了。程序如下所示:

|-----------|------------
|           |           |
|           |           |
| CoolBar1  | CView     |
|           |           |
|           |           |

oopilix (优雅的) 于Sat Aug 16 21:10:14 2003提到:

你在哪里加入这断代码。响应效果怎么样?

还是不行啊,又不知道那里错了。程序如下所示:

|-----------|------------
|           |           |
|           |           |
| CoolBar1  | CView     |
|           |           |
|           |           |

littlebao (爱拼才会赢) 于Sat Aug 16 21:11:21 2003提到:

就在CView里,现在是连MessageBox("ok2") ;都没有响应。


oopilix (优雅的) 于Sat Aug 16 21:16:59 2003提到:

你用什么事件触发的? MessageBox("ok")响应把?

就在CView里,现在是连MessageBox("ok2") ;都没有响应。


littlebao (爱拼才会赢) 于Sat Aug 16 21:20:38 2003提到:

在菜单里设了一个函数, MessageBox("ok")有7次响应,就不知道为什么
下面就没反应了


oopilix (优雅的) 于Sat Aug 16 21:22:26 2003提到:

难道一共七个窗口。你下面一层的while柄没有作用而已吧。
在菜单里设了一个函数, MessageBox("ok")有7次响应,就不知道为什么
下面就没反应了


littlebao (爱拼才会赢) 于Sat Aug 16 21:26:48 2003提到:

是在CoolBar2的同一层次上还有几个窗口,但那应该是没有影响的。
就是不知道为什么那个while没有作用,按道理那两个CoolBar都是CMainFrame的子
窗口,起码也有两次反应吧



oopilix (优雅的) 于Sat Aug 16 22:11:00 2003提到:

没觉得你的代码错误:)你说的发现在别的地方错误了式那里啊?
可以影响到这断代码嘛?


littlebao (爱拼才会赢) 于Sat Aug 16 23:00:49 2003提到:

我也说不清,我在从vcbase下载回来的那个程序上测试了一下相同的
代码,他那个界面和我的是差不多的,但是在那个程序上竟然
六次获得了CView类,真是不可思义,待我慢慢琢磨琢磨。



oopilix (优雅的) 于Sat Aug 16 23:03:32 2003提到:

嗯,我也下载了:)有空看看^_^
我也说不清,我在从vcbase下载回来的那个程序上测试了一下相同的
代码,他那个界面和我的是差不多的,但是在那个程序上竟然
六次获得了CView类,真是不可思义,待我慢慢琢磨琢磨。



littlebao (爱拼才会赢) 于Sun Aug 17 09:17:04 2003提到:

en,觉得那个程序很值得一看,做得太好了,不过vckbase的那个下面的
output 窗口做得比较简单只是镶了一个CEdit并没有真正做到象vc那样。


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店