【问题标题】:CScrollView OnDraw not called未调用 CScrollView OnDraw
【发布时间】:2012-12-26 12:30:11
【问题描述】:

我有一个派生自 CScrollView 的类,并且我继承了 OnDraw 方法。除非我调整大小,否则不会调用 OnDraw 方法。是否需要设置任何特殊属性或以任何方式触发 OnDraw 方法而无需调整大小?

【问题讨论】:

    标签: view mfc activex draw


    【解决方案1】:

    您需要两个函数调用。 1) 无效或无效矩形 2) 更新窗口

    Invalidate 函数会将您的整个视图标记为需要更新(重绘) InvalidateRect 可用于将视图的一部分标记为需要更新。

    调用更新窗口后,如果您之前调用了 Invalidate,则整个视图都会更新,或者如果您之前对 InvalidateRect 进行过一次或多次调用,则会重绘窗口的所有标记部分。

    【讨论】:

    • 我尝试了 invalidateRect 和 UpdateWindow。仍然不会调用 OnDraw 方法。它仅在 Resize 发生时调用。
    猜你喜欢
    • 2016-10-30
    • 1970-01-01
    • 2015-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多