+ -
当前位置:首页 → 问答吧 → 孙鑫C++视频有点问题想问下

孙鑫C++视频有点问题想问下

时间:2011-12-13

来源:互联网

有一课的时候,说在单文档应用程序中,视类是覆盖在框架类之上的,在框架类中添加LBUTTONDOWN消息是不能响应的,但是在后面的画线部分,他定义了一个父类的CPEN对象却能在框架类上面画线,不是应该被屏蔽了吗,这是为什么呢???

作者: calm_keep   发布时间: 2011-12-13

是这样的,视图是覆盖到框架上面的
划线的时候在是top(视图上面画得),当然看得见
框架的LBTNDOWN - 视图在框架的上层,当然是视图接受了LBDOWN了

一句话:视图覆盖了框架的一部分

作者: wangweixu520   发布时间: 2011-12-13

LZ把两个概念弄混淆了吧:在框架上绘图并不意味着是框架类响应了消息。当你视类的函数中使用以下代码时还能在桌面绘图(当前程序未最大化),桌面上的区域可不属于当前程序的任何一个类:
CWindowDC dc(GetDesktopWindow());
dc.MoveTo(0,0);
dc.LineTo(800,800);
也就是说调用视类的函数在框架上绘图

作者: jixiang1983   发布时间: 2011-12-13

暂时比较同意2L的观点。
而且LZ说的“父类的CPen对象在...”表示不太理解LZ想表达的意思

作者: df22b   发布时间: 2011-12-13