(okwary) 小叹的学习园地

与天斗?不够高~ 与地斗?不够阔 与人斗? 脸皮不够厚

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::


窗口透明

 

//窗口透明, 内控件不透明

procedure   TForm1.FormCreate(Sender:   TObject);  

begin  

TransparentColor:=True;
TransparentColorValue:=25;
Color:=Form1.TransparentColorValue;

end;

 

//窗口透明, 内控件也透明

procedure   TForm1.FormCreate(Sender:   TObject);  

begin  

Form1.AlphaBlend:=true;  

Form1.AlphaBlendValue:=120;  

end;

//Form1.AlphaBlendValue  值为透明度值.


SetLayeredWindowAttributes   
   
函数功能:设置窗口透明颜色 
 
格式:
BOOL   SetLayeredWindowAttributes( 
 
                            HWND   hwnd,                   //窗口手柄
  
                            COLORREF   crKey,         //指定颜色值
 
                            BYTE   bAlpha,                 //混合函数值
 
                            DWORD   dwFlags           //动作
 
                            );  
   
参数解释:    
   
hwnd :   
   
窗口句柄。当使用CreateWindowEx函数创建窗口时,窗口由WS_EX_LAYERED指定的值创建;或者窗口已经创建后,由SetWindowLong根据   WS_EX_LAYERED指定的值改。    
   
crKey    
   
指向一个COLORREF值,该值指定一个透明颜色值,当创建窗口时,窗口将使用该值。窗口绘制的所有颜色将为透明。要想产生COLORREF值,请使用RGB宏。    
   
bAlpha    
   
混合函数值。该值用于描述窗口的透明度。当bAlpha   值为0时,窗口完全透明,当bAlpha值为255时,窗口完全不透明。    
   
dwFlags    
   
指定动作。这个参数可以取一个或多个值:    
   
     
   
返回值:    
   
如果函数成功,返回非零值。如果函数失败,返回零值。
   
注意:一旦SetLayeredWindowAttributes调用该函数,随后的UpdateLayeredWindow调用将会无效,直到层风格的点被清除并重新设置

posted on 2008-12-29 19:35  okwary  阅读(338)  评论(0编辑  收藏  举报
ggg