我的同学开始使用 Delphi 和 pascal,但我作为 c++ porgrammer 必须使用 win32 API。他们正在改变背景颜色,所以我也需要知道这一点,但有一些不同之处。
在 delphi 中,每个表单看起来都有自己的实例,为一个窗口设置背景颜色只是更改一个值的问题。win32 的情况并非如此,当您更改该值时,它会影响使用该类的每个窗口(更新 ofc 之后)。
我需要做的是清除/擦除我的窗口背景。我可以用 FillRect(..) 做到这一点,它工作得非常好,但我还发现WM_ERASEBKGND似乎正是我需要的。他们提到如果这条消息被处理,我应该返回一个非零值,但他们没有告诉如何处理它。
那么除了FillRect(和类似的)还有什么可以让我用我定义的画笔而不是类的默认值来擦除一个窗口吗?
谢谢