Windows-Delphi 设置窗口透明度

首先要得到目标窗口的句柄,建议使用祖句柄。然后调用如下函数。

transparent := Integer.Parse(Text);
      if (transparent >= 0) and (transparent <= 100) then
      begin
        SetWindowLong(topHwnd, GWL_EXSTYLE, GetWindowLong(topHwnd, GWL_EXSTYLE)
          or WS_EX_LAYERED); // 设置窗口样式为WS_EX_LAYERED
        SetLayeredWindowAttributes(topHwnd, 0, 255 * transparent div 100,
          LWA_ALPHA); // 设置窗口透明度
      end;

transparent是透明度,[ 0 ,100 ]取值 。

你可能感兴趣的:(Delphi,Windows,Delphi)