MFC设置透明但不穿透窗体

1.初始化中

//设置窗体为透明,要先把窗体边框属性改为无

LONG para = GetWindowLong(this->GetSafeHwnd(), GWL_EXSTYLE);

para |= WS_EX_LAYERED;

SetWindowLong(this->GetSafeHwnd(), GWL_EXSTYLE, para);

//设置窗体透明色为RGB(255,0,0)

SetLayeredWindowAttributes(RGB(255, 0, 0), 255, LWA_COLORKEY);

在OnPaint事件中绘制窗体背景,背景色为透明色

CPaintDC dc(this);

RECT rect;

GetClientRect(&rect);

dc.FillSolidRect(&rect, RGB(255, 0, 0));

3.在OnCtlColor事件中设置控件

if (nCtlColor == CTLCOLOR_STATIC)背景

{

pDC->SetBkColor(RGB(255, 0, 0));//背景色为绿色

//pDC->SetBkMode(TRANSPARENT);//设置背景透明

pDC->SetTextColor(RGB(255, 0, 255));//文字为红色

pDC->SelectObject(&m_font);//文字为15号字体,华文行楷

return m_brush;

}

4.MFC 中static 控件不能相应点击事件的解决办法

更改通知属性

相关推荐
dengzhenyue4 天前
MFC 学习笔记
笔记·学习·mfc
兵哥工控8 天前
mfc 线程启动、挂起、恢复、停止实例
c++·mfc·线程
爱看书的小沐9 天前
【小沐学CAD】基于OCCT读取和显示STEP模型文件(QT、MFC、glfw)
qt·mfc·opengl·stp·step·opencascade·occt
CAACoder13 天前
CATIA/3DE CAA二次开发-ListCtrl-2
mfc·catia·caa·clistctrl
CAACoder13 天前
CATIA/3DE CAA二次开发-播放gif的控件
mfc·catia·caa·gif播放控件
此刻觐神15 天前
Windows学习笔记-18(MFC项目-制作快捷方式管理工具)
windows·笔记·学习·mfc
xEurCjvwu15 天前
CNN-LSTM多变量回归预测(Matlab) 基于卷积-长短期记忆网络(CNN-LSTM)的...
mfc
此刻觐神19 天前
Windows学习笔记-13(MFC状态栏Status Bar)
笔记·学习·mfc
MSTcheng.22 天前
CANN ops-math算子的跨平台适配与硬件抽象层设计
c++·mfc
平安的平安23 天前
面向大模型算子开发的高效编程范式PyPTO深度解析
c++·mfc