在OnInitDialog()中添加 HINSTANCE hInst = LoadLibrary(L"User32.DLL"); if(hInst) { typedef BOOL (WINAPI *MYFUNC)(HWND,COLORREF,BYTE,DWORD); MYFUNC fun = NULL; //取得SetLayeredWindowAttributes函数指针 fun=(MYFUNC)GetProcAddress(hInst, "SetLayeredWindowAttributes"); if(fun)fun(this->GetSafeHwnd(),0,30,2); //128为半透明,0为完全透明 FreeLibrary(hInst); } 或者直接调用 SetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE, GetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE)^0x80000); ::SetLayeredWindowAttributes(this->GetSafeHwnd(), 0, 30, 2);
效果如上图所示
MFC中设置窗口透明程度
最新推荐文章于 2023-11-25 16:39:29 发布