吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3978|回复: 2
收起左侧

[其他转载] 今天找到的一个代码,透明窗体的实现

[复制链接]
诚城 发表于 2009-4-5 21:08
程序运行用,窗体可以设置透明度,感觉挺不错的,以下是代码和解释
用vc6,创建一个居于对话框的应用程序,
   在OnInitDialog中添加代码:
// TODO: Add extra initialization here
   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(),0,128,2);//第三个参数(128)不要取得太小,0为完全透明
FreeLibrary(hInst);
}
}
我就注释2个,其他如果有看不懂的函数,自己区查看MSDN吧,我就不详细说了

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

helpmsg 发表于 2009-8-14 04:12
我昏。这个东西能卖2UB
TheCjw 发表于 2009-8-14 23:22
3个API罢了。。。
SetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE,
        GetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE)^0x80000);

SetLayeredWindowAttributes(0,dwAlpha,2);
//dwAlpha 是透明度

VS2008 sp1 的对话框可以直接用。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-5-14 01:36

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表