SetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE,GetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE)^0x80000);HINSTANCE hInst = LoadLibrary("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(),RGB(255,255,255),128,2);
FreeLibrary(hInst);
}
这是网上的一段代码,加到OnInitDialog()里面可以达到透明效果;
fun应该是个函数fun=(MYFUNC)GetProcAddress(hInst, "SetLayeredWindowAttributes");这里又给fun赋值;
fun的
第二个参数是 设置透明色
第三个参数是 设置不透明度 255就是不透明 0就是全透明
第四个参数 是一个方式选择 1表示让第二个参数的颜色透明此时第三个参数无效
2表示全窗口透明此时第二个参数无效
if(hInst)
{
typedef BOOL (WINAPI *MYFUNC)(HWND,COLORREF,BYTE,DWORD);
MYFUNC fun = NULL;
//取得SetLayeredWindowAttributes函数指针
fun=(MYFUNC)GetProcAddress(hInst, "SetLayeredWindowAttributes");
if(fun)fun(this->GetSafeHwnd(),RGB(255,255,255),128,2);
FreeLibrary(hInst);
}
这是网上的一段代码,加到OnInitDialog()里面可以达到透明效果;
fun应该是个函数fun=(MYFUNC)GetProcAddress(hInst, "SetLayeredWindowAttributes");这里又给fun赋值;
fun的
第二个参数是 设置透明色
第三个参数是 设置不透明度 255就是不透明 0就是全透明
第四个参数 是一个方式选择 1表示让第二个参数的颜色透明此时第三个参数无效
2表示全窗口透明此时第二个参数无效