透明窗口 SetLayeredWindowAttributes(别的板块无人)

dfatfat dfatfat 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
#include <windows.h>
#ifndef WS_EX_LAYERED
#define WS_EX_LAYERED 0x00080000UL
#endif //WS_EX_LAYERED

#ifndef LWA_ALPHA
#define LWA_ALPHA 2
#endif

typedef BOOL (WINAPI *pSETLAYEREDWINDOWATTRIBUTES)(HWND, COLORREF, BYTE, DWORD);
BOOL SetWindowAlpha(HWND hwnd, BYTE bAlpha)
{
BOOL bRet = 0;
HMODULE hModule = GetModuleHandle(("User32.dll"));
if(hModule)
{

pSETLAYEREDWINDOWATTRIBUTES pSetLayeredWindowAttributes =
(pSETLAYEREDWINDOWATTRIBUTES)::GetProcAddress(hModule,
"SetLayeredWindowAttributes");
if(pSetLayeredWindowAttributes)
{
// Set WS_EX_LAYERED on this window
SetWindowLong(hwnd, GWL_EXSTYLE,GetWindowLong(hwnd, GWL_EXSTYLE) | WS_EX_LAYERED);

// Make this window bAlpha
pSetLayeredWindowAttributes(hwnd, 0, bAlpha, LWA_ALPHA);
return bRet;
}
}
return bRet;
}
int main()
{
HWND hwnd=GetActiveWindow();
SetWindowAlpha(hwnd,129 );

return 0;
}

这个代码只能让屏幕透明!!!
我想实现一个 特地大小的窗口在里面插入图片,然后在加上透明的
问了好几天了??
没人回答
希望大家帮忙!!
...全文
评论 11
收藏 已收藏
分享
返回顶部
dfatfat
进程/线程/DLL 15,465 成员 49,169 内容