我在win32中实现了一个边框控制,我已经为那个边框实现了各种样式。我正在使用简单的 MoveTo() 和 LineTo() 命令来绘制边框。我的问题是,当我为我的边框选择一些新样式时,它开始在当前绘制的边框上绘画。我知道我需要刷新/重新粉刷我的窗口才能获得新的画布。我现在使用 InvalidateRect() 来实现这个目的。但我担心,如果我有其他窗口与我的边框控制窗口(作为子窗口)相关联,这将如何影响子窗口?我需要重新绘制此窗口上的所有内容,对吗?
其次,无论如何我可以在 GDI 区域 (HRGN) 内画线吗?到目前为止,我所遇到的只是如何用一些填充颜色填充 HRGN。无论如何我可以检索与该特定 HRGN 对象关联的 HDC 吗?