• 使矩形区域无效


      OnLButtonDown函数虽然可以随时改变一个m_nColor的值,但是如果只是这样的话,OnDraw函数是不会调用的(除非用户改变视图的大小),因此,OnLButtonDown函数必须调用

    InvalidateRect函数(它是CMyView类从CWnd继承过来的成员函数),它能触发Windows的WM_PAINT消息,该消息又在CView类被映射,以引起对OnDraw的调用。如果有必要,OnDraw函数还可以访问传给InvalidateRect的"无效矩形区域"参数。

      有两种情况可以优化Windows的绘制过程。第一,我们必须知道WIndows只更新无效的矩形内部的像素,所以所设置的无效矩形区域越小(例如在函数OnLButtonDown中设置),则重画的速度就越快;第二,执行在无效矩形歪蜜啊女的绘制指令纯属是浪费时间,OnDraw函数可以调用CDC中的成员函数GetClipBox得到无效的矩形大小,这样在绘制时就可以避免对其外边的的对象的绘制。记住,OnDraw函数不仅仅会响应InvalidateRect调用,它也会在窗口改变大小和窗口显露时被调用,因此,OnDraw要对窗口内所有的绘制处理,而且它还要适应无效矩形的限制。

    よろしく,お願いします!
  • 相关阅读:
    2
    1
    nginx隐藏版本号
    全面对比主流 .NET 报表控件 (转)
    前端的发展和未来趋势
    NPM初学者指南 (转)
    一文解读MySQL事务
    如何高效的学习技术
    重新统一的 .NET平台-.NET 5
    为啥要有微服务?啥是微服务?
  • 原文地址:https://www.cnblogs.com/cwbo-win/p/3219446.html
Copyright © 2020-2023  润新知