您的位置:首页 > 其它

设置窗口的透明度

2009-05-12 16:57 134 查看
该方法使用在单文档、对话框(基于Dialog)中,多文档未试。

添加在窗口的OnInitDialog中即可。

//设置主窗口的透明度

SetWindowLong(m_hWnd, GWL_EXSTYLE, GetWindowLong(m_hWnd, GWL_EXSTYLE)^0x80000); //0x80000:WS_EX_LAYERED

HINSTANCE hInst = LoadLibrary("User32.DLL"); //显式加载DLL

if (hInst != NULL)

{

typedef BOOL (WINAPI *MYFUNC)(HWND, COLORREF, BYTE, DWORD);

//取得SetLayeredWindowAttributes函数指针

MYFUNC pFunc = (MYFUNC)GetProcAddress(hInst, "SetLayeredWindowAttributes");

if (pFunc != NULL)

{

pFunc(m_hWnd, 0, 200, 2); // 2:LWA_ALPHA 200为透明度

}

FreeLibrary(hInst);

hInst = NULL;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: