半透明窗体(100分)

  • 主题发起人 主题发起人 Joki
  • 开始时间 开始时间
要半透明面板的话,cAkk的主页上有一个ExtraPak控件包中有。
 
透明的窗体我也会做,但是仅限于静态的,如 Splash 等
如果要可移动就麻烦多了,我始终没有解决背景(指透明窗口下面的画面)的问题。
举一个详细的问题,就是一个始终浮在顶层的窗口,
如何在背景改变的时候也相应改变,而且如何得到背景改变的消息?

另外不用自己写透明函数,有现成的Win32 API Alphablend
 
感谢各位高手。
 
我这里有得是朋友bcb得一段代码。。。不过在98吓不好使
 
procedure TForm1.FormCreate(Sender: TObject);
var l:longint;
begin
l:=getWindowLong(Handle, GWL_EXSTYLE);
l := l Or WS_EX_LAYERED;
SetWindowLong (handle, GWL_EXSTYLE, l);
SetLayeredWindowAttributes (handle, 0, 180, 2);
//180是透明度,可让它从100增到155
 

Similar threads

回复
0
查看
825
不得闲
I
回复
0
查看
532
import
I
D
回复
0
查看
844
DelphiTeacher的专栏
D
D
回复
0
查看
854
DelphiTeacher的专栏
D
D
回复
0
查看
686
DelphiTeacher的专栏
D
后退
顶部