layered-windows

    1熱度

    1回答

    我在我的程序中有一個分層窗口,看起來(視覺上)工作正常,但UpdateLayeredWindow的返回碼應該是成功的非零值。在我的情況下,它是0,GetLastError返回87,這是一個不正確的參數。有人可以告訴我,如果我的設置有任何問題嗎?這裏是完整的功能,窗口樣式是WS_EX_LAYERED|WS_EX_TOPMOST和WS_POPUP。 bool SplashScreen(HWND hwn

    0熱度

    1回答

    我有一個分層窗口(使用SetLayeredWindowAttributes)。如果我將整個窗口上的alpha設置爲128並在其上繪製黑色矩形,它將按預期工作(顯示約50%不透明度的黑色矩形)。但是,如果我在整個窗口中設置了aplha(當我將SetLayeredWindowAttributes設置爲255),然後使用設置爲50%的畫筆繪製黑色矩形時,它們的黑色矩形是純粹的實體,沒有任何半透明性。 我

    2熱度

    1回答

    我創建了一個分層窗口(帶有WS_EX_LAYERED),大小約爲400X300像素。 當繪製窗口(使用UpdateLayeredWindow)一切都很正常。 的問題是,我無法繪製它後得到窗口的HBITMAP。 當試圖通過窗口的HDC獲取HBITMAP時,我得到一個空的(黑色)位圖,這是我整個桌面的大小(1920X1080像素,全尺寸爲400X300像素)。 是否有人知道它甚至可能得到一個分層窗口的

    2熱度

    1回答

    我想創建一個具有透明背景的Direct2D應用程序,其中放置了一些不透明的複雜控件。 該問題可以分解爲幾個子問題: 架構:控件應該作爲子窗口實現嗎?我認爲這是正確的方法,而不是創建實現子窗口功能的Direct2D多邊形。 我試圖通過初始化父窗口來實現這一點: SetWindowLong(m_hwnd, GWL_EXSTYLE, GetWindowLong(m_hwnd, GWL_EXSTYLE)

    3熱度

    2回答

    我需要在WS_OVERLAPPED窗口中進行鳥動畫(如下所示)。動畫是通過8個圖像表示: 藍顏色的圖像中(這是RGB(0, 255, 255))必須是透明的(參見下圖)。 我想用CreateWindowEx()(鳥會用分層窗口表示)與WS_EX_LAYERED的參數來做到這一點。不幸的是,鳥兒必須是WS_CHILD。在混合WS_EX_LAYERED | WS_CHILDis not legal W

    1熱度

    1回答

    我有一個分層窗口(WS_EX_LAYERED),實現了自定義NCHITTEST和NCCALCSIZE,使窗口的客戶端矩形與窗口矩形一樣。我的窗戶尺寸和顏色正確;當光標靠近窗口的底部邊緣時,我可以從WM_NCHITTEST返回HTBOTTOM,以產生垂直調整大小的窗口從底部類型的動作。但是,我沒有得到垂直調整大小的光標。有沒有辦法解決這個問題,而不必實現WM_SETCURSOR並測試指針的位置與窗口

    0熱度

    1回答

    我有一個分層窗口,具有屏幕大小但幾乎完全透明。 (除了用戶點擊的小十字) wc.style = 0; wc.lpfnWndProc = (WNDPROC) wnd_top_rect_proc; wc.cbClsExtra = 0; wc.cbWndExtra = 0; wc.hInstance = hInst; wc.hIcon = NULL; wc.hCursor = Load

    0熱度

    2回答

    我有一個使用WS_EX_LAYERED窗口樣式創建的窗口。我正在使用GDI +繪製內存位圖,並使用UpdateLayeredWindow來更新我的分層窗口的圖形內容。我打算使用這個窗口作爲我的應用程序的主窗口,這將需要經常重繪。 作爲分層窗口看到沒有收到WM_PAINT窗口消息[?],我需要拿出一個合適的方法重新繪製窗口。優化不是必不可少的,但它總是很高興有你的蛋糕和吃它。因此,我正在尋找使用「正

    1熱度

    1回答

    在Windows窗體和C#中,我使用WS_EX_LAYERED樣式的表單,並調用UpdateLayeredWindow將背景設置爲透明/ alpha混合的圖像: NativeMethods.BLENDFUNCTION blend = new NativeMethods.BLENDFUNCTION(); blend.BlendOp = NativeMethods.AC_SRC_OVER; ble

    0熱度

    1回答

    所以我發現了很多關於將圖像繪製到分層窗口的代碼示例,指南和答案。我嘗試過使用純HBITMAP S和WIC庫進行繪製,現在我正在使用GDI +進行繪製(這非常簡單並且看起來更容易使用,並且迄今爲止它已解決了許多導致的錯誤由錯誤的WIC代碼)。 我目前卡在UpdateLayeredWindow。無論我嘗試什麼,我都無法讓它工作。現在,它返回87或ERROR_INVALID_PARAMETER。問題是,