0

我想创建具有自定义形状的按钮,所以我决定在分层窗口的帮助下完成。我为按钮创建窗口,为其设置位图,使其分层,然后尝试使白色完全透明。我一写masm,代码如下:

mov button, rv(CreateWindowEx, WS_EX_APPWINDOW or WS_EX_LAYERED, 
    chr$("Button"), NULL, 
    WS_CHILD or BS_BITMAP or WS_VISIBLE, 
    300, 10, 81, 98, 
    hWin, 200, hInstance, NULL)
mov bmHandle, rv(LoadImage, NULL, bitmapPath, 
    IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE or LR_DEFAULTSIZE)
invoke SendMessage, button, BM_SETIMAGE, IMAGE_BITMAP, eax
invoke SetLayeredWindowAttributes, hWnd, 00000000h, 0, LWA_COLORKEY

但是位图上的白色不会变得透明,尽管它与我的自定义窗口形状一起使用。

我怎样才能使这项工作?

4

0 回答 0