如何在一个窗口中生成一个透明的矩形框?
解决方案 »
- cocos2d-x 中怎么捕获KeyUp消息
- MFC中想让程序在进程里休眠,除了sleep还有别的方法么?
- 谁那有jabber客户端的简单实现(支持TLS)
- 请教一个添加自定义消息的问题
- 200分!关于InternetOpenUrl支持多线程的问题!
- 一个在MSDN中找不到的函数,请高手指教是什么作用
- 怎样才能算入门?
- 请问斑主,怎样才能成为大本营专区会员?
- 为DLL中的对话框的按钮加位图的问题
- 如何在ansi环境下读写unicode文档呢?
- 有谁知道怎么样在list control控件里加表格线啊?
- 通过IMarkupServices::ParseString()解析了html文件之后,如何执行脚本?
SetLayeredWindowAttribute 或 UpdateLayeredWindow 函数
-------------------------------------------
//加入WS_EX_LAYERED扩展属性,必须要加上这个属性
SetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE,
GetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE)^0x80000);//调用User32.DLL中的函数
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(),0,215,2);
FreeLibrary(hInst);
}