gpt4 book ai didi

c++ - 使用 BeginPaint/EndPain 而不是 GetDC/ReleaseDC 来响应 WM_PAINT 消息有什么特别之处吗?

转载 作者:可可西里 更新时间:2023-11-01 16:29:22 27 4
gpt4 key购买 nike

可以使用GetDC/ReleaseDC在窗口客户区绘制。但是为了响应 WM_PAINT 消息,必须使用 BeginPaint/EndPaint。这有什么特别的吗?

最佳答案

当窗口的一部分需要更新时,会发出 WM_PAINT 消息。通过指定 BeginPaint/EndPaint(),您告诉 gdi 您实际上正在做那项工作。如果您不为指定区域调用 BeginPaint(),WM_PAINT 消息将一直生成,直到有人实际更新它为止。函数给你一个DC,就是因为方便。在内部 BeginPaint()/EndPaint() 可能调用 GetDC()/ReleaseDC()。

与 GetDC 和 ReleaseDC 不同,您是在告诉 GDI 现在要在 DC 上绘制一些东西,而 gdi 没有要求您必须这样做。

关于c++ - 使用 BeginPaint/EndPain 而不是 GetDC/ReleaseDC 来响应 WM_PAINT 消息有什么特别之处吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7052411/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com