用 UpdateLayeredWindow 制作Alpha透明窗体的问题

ptma 2005-06-02 10:03:16
我在用 UpdateLayeredWindow 制作Alpha透明窗体的时候


如何显示多个 png 透明图片,以及其它控件?

在网上找了很久,发现大家都有我这样的问题,难道真的很难?

(雪狐日历精灵,桌面天气秀 )是怎么做的呢?
...全文
247 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ptma 2005-06-05
  • 打赏
  • 举报
回复
但是这样移动窗体时就露馅了
Larry1030 2005-06-03
  • 打赏
  • 举报
回复
procedure CreateWnd;override;
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}
procedure TForm1.CreateWnd;
begin
inherited CreateWnd;
SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) or
WS_EX_LTRREADING or
WS_EX_TRANSPARENT or
WS_EX_TOPMOST or
WS_EX_TOOLWINDOW or
WS_EX_LAYERED);
SetLayeredWindowAttributes(Handle, Color, 150, LWA_ALPHA or LWA_COLORKEY);
end;
end.
jinjazz 2005-06-03
  • 打赏
  • 举报
回复
我看了下桌面天气秀的效果,很简单的,参考
http://borland.mblogger.cn/Jinjazz/posts/21093.aspx
ptma 2005-06-03
  • 打赏
  • 举报
回复
这样的话,整个窗体半透明了,

我要的是:根据Png图片的透明度来显示窗体,
有的地方全不透明,有的地方半透明,有的地方全透明
nice0934 2005-06-02
  • 打赏
  • 举报
回复
学习!

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧