3
我知道如何使用Layered Windows將我自己的應用程序變成透明的,但是我想讓不同的應用程序變得透明(例如記事本)。 我寫了這樣的代碼,但它不與其他的窗口,除了我的應用程序的主窗口的工作:如何讓另一個應用程序的窗口透明?
SetWindowLongPtr(WindowFromPoint(p), GWL_EXSTYLE,
GetWindowLongPtr(hWnd, GWL_EXSTYLE) | WS_EX_LAYERED);
SetLayeredWindowAttributes(WindowFromPoint(p), 0, (255 * 50)/100, LWA_ALPHA);
其中p爲屏幕上的點(例如我用我的鼠標選擇窗口)
如果有直接從Windows 7執行此操作的方法(不一定是程序化),我也很感興趣。我認爲必須有一種方法來實現它,因爲每個應用程序都被渲染到它自己的表面上,DWM將它們合成到最終的圖像中。
哎呀,是的,這是一個錯誤。謝謝,但它仍然不起作用:P – Sil 2010-02-20 09:17:11
非常感謝你,我的代碼也可以工作,但我在POINT結構中硬編碼了這些值,並手動將所需的窗口放到了那個位置.. :)我想我只是沒有做到這一點,不要打上標題。再次感謝你。 – Sil 2010-02-20 16:59:38