如何使Win32 APP背景透明?

时间:2010-02-26 22:57:24

标签: c++

如何让Win32 APP背景透明? 在C ++中,我想让程序的背景看起来像桌面图片。

1 个答案:

答案 0 :(得分:3)

为其赋予WS_EX_TRANSPARENT扩展窗口样式,并通过不执行任何操作来处理WM_ERASEBKGND消息。

这将使窗口的透明部分也对鼠标消息透明,如果您不想这样,则处理WM_NCHITTEST消息并返回HTCLIENT而不是HTTRANSPARENT。

case WM_NCHITTEST:
   {
   lRet = DefWindowProc(hwnd, uMsg, wParam, lParam);
   if (HTTRANSPARENT == lRet)
      lRet = HTCLIENT;
   }