huidong

首页 | 会员登录 | 关于争取 2022 寒假做出汇东网 Ver3.0.0 !
搜索文章


创建 win32 控件后,可以设置它们背景是否透明,以及文本的颜色。


MSDN: https://learn.microsoft.com/zh-cn/windows/win32/controls/wm-ctlcoloredit 


    case WM_CTLCOLORSTATIC:
    {
        HDC hdc = (HDC)wParam;
        
        // 此处设置的是文字绘制的属性
        SetBkMode(hdc, TRANSPARENT);
        SetTextColor(hdc, RGB(255, 0, 0));
        SetBkColor(hdc, RGB(0, 100, 255));
        
        // 返回的刷子设置的是控件窗体的背景
        // 如果这里不自己返回的话,上面的设置是无效的
        return (LRESULT)GetStockObject(BLACK_BRUSH);
        
        break;
    }


目前还未确定的是,启用现代控件样式后是否还可以生效(可能子控件要有 WS_EX_TRANSPARENT 属性)



返回首页


Copyright (C) 2018-2024 huidong