在win32中绘制图像?

时间:2012-07-03 11:51:46

标签: winapi gdi codeblocks

首先,请记住我是win32的初学者,所以我很可能会错过这个明显的。

我正在使用Code :: Blocks,C ++,win32。我正在制作一个程序:

  1. 将从文件中加载图像
  2. 会从另一个文件中加载一些信息并将其绘制在图像上。
  3. 该程序随后将在图像上绘制其他内容。此外,我不需要将此绘图实际合并到图像中,图像仅作为绘图的参考。

    我已设法在子(静态)窗口中显示图像,并且已成功将信息绘制到主窗口。当我想要将两者合并以便绘图将覆盖图像时,我被卡住了 - 我不知道要绘制哪个窗口以及要为绘图处理哪个消息。我在互联网上搜索任何提示,例子,任何东西,但我一无所获。 (这可能是因为我不知道如何描述我的问题。)

    过去几天我一直在尝试不同的事情,比如用图像绘制到静态控件,并尝试在图像的顶部绘制透明静态控件,但没有任何效果。

    如果有人能给我任何提示,那就太好了!谢谢!

1 个答案:

答案 0 :(得分:0)

捕获要绘制的窗口的WM_PAINT消息。在处理程序中,首先添加代码绘制图像(或许BitBlt函数),然后绘制所需的图形。您还必须处理WM_ERASEBKGND消息,该消息用于在重新调整大小等时擦除窗口的背景。

参考:WM_PAINT messageWM_ERASEBKGND message