学习笔记--MFC在滚动条窗口如何使所图的图形不产生偏移
2014-10-17 09:42
281 查看
在有滚动条窗口中
1.当用集合类保存坐标点的方式来实现保存图形时可以通过调整显示上下文属性的方式实现
OnPrepareDC(&dc); //调整显示上下文的属性
//将设备点转换成逻辑点
dc.DPtoLP(&m_pOrigin);
dc.DPtoLP(&point);
要搞懂的话你应该去了解一些关于 OnPrepareDC() 、视口、窗口、逻辑坐标、设备坐标、设备点与逻辑点的相互转换 方面的知识
2.当用兼容DC(CompatibleDC)或是CMetaFileDC类实现图形保存和重绘时,在滚动条窗口中当滚动条拖至最下方时,绘的图会产生偏移,
窗口最下方部分无法显示绘图,
可以通过兼容DC绘图或是CMetaFileDC类绘图中任意一种方式加上 上面的集合类绘图 实现两种绘图方式相结合来实现不产生偏移。
不过这种方式比较笨,不知道哪位大神有没有其他的方式实现,望告知,我愿意虚心求教!
1.当用集合类保存坐标点的方式来实现保存图形时可以通过调整显示上下文属性的方式实现
OnPrepareDC(&dc); //调整显示上下文的属性
//将设备点转换成逻辑点
dc.DPtoLP(&m_pOrigin);
dc.DPtoLP(&point);
要搞懂的话你应该去了解一些关于 OnPrepareDC() 、视口、窗口、逻辑坐标、设备坐标、设备点与逻辑点的相互转换 方面的知识
2.当用兼容DC(CompatibleDC)或是CMetaFileDC类实现图形保存和重绘时,在滚动条窗口中当滚动条拖至最下方时,绘的图会产生偏移,
窗口最下方部分无法显示绘图,
可以通过兼容DC绘图或是CMetaFileDC类绘图中任意一种方式加上 上面的集合类绘图 实现两种绘图方式相结合来实现不产生偏移。
不过这种方式比较笨,不知道哪位大神有没有其他的方式实现,望告知,我愿意虚心求教!
相关文章推荐
- 学习笔记--MFC在滚动条窗口如何使所图的图形不产生偏移
- MFC学习笔记——如何使窗口最大化,但不遮盖任务栏
- 孙鑫VC学习笔记:第十一讲 (五) 如何使窗口具有滚动条
- SilverLight学习笔记-- 如何在一个HyperlinkButton点击后打开新窗口
- MFC学习笔记之三————区分窗口类对象以及窗口&&四种获得DC方式绘图
- VS2013MFC单文档工程学习笔记七 - 创建新的一个窗口并让窗口2透明
- 在CFormView中如何使单文档窗口缩小时也不产生滚动条
- SilverLight学习笔记--如何创建弹出子窗口并与之交互
- MFC学习笔记——线程中控制窗口内容 .
- webgl学习笔记1--如何绘制一个基本图形
- MFC中窗口收到WM_PAINT消息是如何处理的,什么情况下产生WM_PAINT消息
- VS2013MFC单文档工程学习笔记六 - 窗口的常用消息事件
- [Silverlight学习笔记]如何滚动没有滚动条的ListBox?
- MFC学习笔记之六————更改appwizard生成的窗口外观
- MFC学习笔记之三————区分窗口类对象以及窗口&&四种获得DC方式画图
- MFC学习笔记(一)应用程序窗口初始化
- MFC学习笔记之:MFC最基本动作(如创建窗口,点击取消等)函数的执行顺序
- Matlab学习笔记 - 图形窗口
- 学习笔记之MFC修改默认窗口大小
- 【MFC学习笔记-作业5-小数据库】【单选框,复选框,滚动条,列表框】