存档
windows的透明窗口,如果设置了LWA_ALPHA和WS_EX_TRANSPARENT,就会连鼠标键盘事件也给透明过去,这个功能还不错。可以在屏上显示水印。 关键代码: SetWindowLong(m_hWnd, GWL_EXSTYLE, WS_EX_LAYERED|WS_EX_TRANSPARENT|WS_EX_TOPMOST); SetLayeredWindowAttributes(m_hWnd, RGB(0,0,0), 120, LWA_ALPHA); SetWindowPos(m_hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE|SWP_NOSIZE|SWP_NOMOVE|SWP_SHOWWINDOW); demo代码: static LRESULT WINAPI UIWndProcBase(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) { if (msg == WM_PAINT) { PAINTSTRUCT ps; BeginPaint(hWnd, &ps); //OnPaint(ps.hdc); EndPaint(hWnd, &ps); } else if (msg == WM_DESTROY) { PostQuitMessage(0); } return DefWindowProc(hWnd, msg, wParam, lParam); [...]
八 1st, 2009 | Filed under 开发