博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WinAPI: SetLayeredWindowAttributes - 设置窗口的透明
阅读量:5756 次
发布时间:2019-06-18

本文共 1239 字,大约阅读时间需要 4 分钟。

  hot3.png

这是来宾 Dolby 在 询问的问题.

//声明:SetLayeredWindowAttributes(  Hwnd: THandle;   {窗口句柄}  crKey: COLORREF; {透明色}  bAlpha: Byte;    {Alpha 值}  dwFlags: DWORD   {LWA_COLORKEY(=1)表示使用透明色; LWA_ALPHA(=2)表示使用 Alpha 值}): Boolean;        {是否成功设置}         //举例(控制外部程序的透明度, 用计算器举了个例子):unit Unit1;interfaceuses  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,  Dialogs, StdCtrls;type  TForm1 = class(TForm)    Button1: TButton;    Button2: TButton;    procedure Button1Click(Sender: TObject);    procedure Button2Click(Sender: TObject);  end;var  Form1: TForm1;implementation{$R *.dfm}{设定计算器的 Alpha 透明}procedure TForm1.Button1Click(Sender: TObject);var  h: HWND;  FormStyle: Integer;begin  h := FindWindow('SciCalc', nil);  FormStyle := GetWindowLong(h, GWL_EXSTYLE);  SetWindowLong(h, GWL_EXSTYLE, FormStyle or WS_EX_LAYERED);  SetLayeredWindowAttributes(h, 0, 128, LWA_ALPHA);end;{设定计算器中的白色透明}procedure TForm1.Button2Click(Sender: TObject);var  h: HWND;  FormStyle: Integer;begin  h := FindWindow('SciCalc', nil);  FormStyle := GetWindowLong(h, GWL_EXSTYLE);  SetWindowLong(h, GWL_EXSTYLE, FormStyle or WS_EX_LAYERED);  SetLayeredWindowAttributes(h, clWhite, 255, LWA_COLORKEY);end;end.

转载于:https://my.oschina.net/hermer/blog/320637

你可能感兴趣的文章
HAProxy负载均衡原理及企业级实例部署haproxy集群
查看>>
开源中国动弹客户端实践(三)
查看>>
Win 8创造颠覆性体验:预览版关键更新
查看>>
vim在多文件中复制粘贴内容
查看>>
Android ContentObserver
查看>>
文章“关于架构优化和设计,架构师必须知道的事情”
查看>>
疯狂java学习笔记1002---非静态内部类
查看>>
ISA2006实战系列之一:实战ISA三种客户端部署方案(上)
查看>>
TCP服务器
查看>>
U-Mail邮件系统与泛微OA系统一体化操作指南
查看>>
AC旁挂三层交换机管理ap,二层接入ap心得
查看>>
JS中比较数字大小
查看>>
springcloud 学习-eureka搭建-为eureka添加认证
查看>>
jQuery插件的开发
查看>>
基础,基础,还是基础之JAVA基础
查看>>
如何成为一个C++高级程序员
查看>>
ant android 打包签名和渠道
查看>>
一个简单的接口,被调用并同步给出响应的方法
查看>>
Hadoop序列化与压缩
查看>>
由“男怕入错行”说开去
查看>>