2012-07-07 43 views
0

我已經搜索了一個解決方案,但我沒有找到任何解決方案。在原生Win32中,可以使框架窗口的客戶區域透明:wxwidgets透明客戶區

HWND hwnd = (HWND)GetHandle(); 
SetWindowLong(hwnd, GWL_EXSTYLE, GetWindowLong(hwnd, GWL_EXSTYLE) | WS_EX_LAYERED|WS_EX_TOOLWINDOW); 
SetLayeredWindowAttributes(hwnd, RGB(255,255,255), 0, LWA_COLORKEY); 
Refresh(); 

這也適用於wxwidgets。它使客戶區也是透明的。但現在窗體窗體不可點擊。 我試着把這段代碼放在paint-event-method「TestFrame :: OnPaint(wxPaintEvent & event)」和方法「TestFrame :: TestFrame(wxWindow * parent,wxWindowID id)」中。

我只需要使標題欄可點擊來移動窗口。

預先感謝您。

回答

0

嘗試

HWND hwnd = (HWND)GetHandle(); 
SetWindowLong(hwnd, GWL_EXSTYLE, GetWindowLong(hwnd, GWL_EXSTYLE) | WS_EX_LAYERED|WS_EX_TOOLWINDOW); 
SetLayeredWindowAttributes(hwnd, RGB(255,255,0), 0, LWA_COLORKEY); 

和設置的backgroundColor =黃色

也許問題是你選擇使用RGB(255,255,255)。如果你使用RGB(255,255,0)。有用。