フォーム上に透明なく、不透明なコントロールを形成します

 

関連情報:

https://www.iteye.com/blog/paulfzm-1835285

 

例1:

1つの ユニットUnit1は。
2  
3  インターフェース
4  
図5は、 使用
6    Winapi.Windows、Winapi.Messages、System.SysUtils、System.Variants、System.Classes、Vcl.Graphics、
 7    Vcl.Controls、Vcl.Forms、Vcl.Dialogs、Vcl.StdCtrls、Vclにします。 ComCtrls;
8  
9  種類
10    TForm1 = クラス(TFormは)
 11      ボタン1:のTButton。
12の     ListBox1を:TListBoxコンポーネント。
13      MEMO1:TMemoオブジェクト。
14      EDIT1:TEDIT。
15      progressBar1の:TProgressBar。
16      TrackBar1:TTrackBar。
17      手順Button1Click(送信者:TObjectを);
18    プライベート
19      { プライベート宣言} 
20    公衆
21      { 公開宣言} 
22    の端部23  
24  VAR 
25    をForm1:TForm1;
26  
27  実装
28  
29  { $ Rの*の.DFM } 
30  
31  手順TForm1.Button1Click(送信者:TObjectを)。
32  Varの
 33    frmRegion、tempRegion:HRGN。
34    I:整数;
35    Arect:TRect;
36  開始
37    frmRegion:= 0 ;
38    Iの場合:= 0 - ControlCountに1 39は   開始
 40      aRect:= コントロール[I] .BoundsRectを。
41      OffsetRect(aRect、clientorigin.x -左、clientorigin.y - トップ)
42      tempRegion:= CreateRectRgnIndirect(aRect)。
43      の場合frmRegion = 0 そして
 44        frmRegion:= tempRegion
 45      エルス
 46は     開始
 47        CombineRgn(frmRegion、frmRegion、tempRegion、RGN_OR)を、
48       DeleteObjectの(tempRegion)。
49      END;
50    END;
51    tempregion:=
 52    CreateRectRgn(00 、幅、
 53の                  GetSystemMetrics関数(SM_CYCAPTION)+
 54の                  GetSystemMetrics関数(SM_CYSIZEFRAME)+
 55の                  GetSystemMetrics関数(SM_CYMENU)*オード(メニュー<> NIL))。
56  
57    CombineRgn(frmRegion、frmRegion、tempRegion、RGN_OR)。
58    DeleteObjectの(tempRegion)。
59    SetWindowRgn(真、frmRegionを扱います)。
60  エンド;
61  
62  
コードの表示

 

例2:

1つの ユニットUnit1は。
2  
3  インターフェース
4  
図5は、 使用
6    Winapi.Windows、Winapi.Messages、System.SysUtils、System.Variants、System.Classes、Vcl.Graphics、
 7    Vcl.Controls、Vcl.Forms、Vcl.Dialogs、Vcl.StdCtrlsと、
8  
9  種類
10    TForm1 = クラス(TFormは)
 11      ボタン1:のTButton。
12      EDIT1:TEDIT。
13      手順FormCreate(送信者:TObjectを)。
14    プライベート
15      { プライベート宣言} 
16    公衆
17      {パブリック宣言} 
18    の端部19  
20  VAR 
21    をForm1:TForm1。
22  
23  実装
24  
25  { $ Rの*の.DFM } 
26  
27  手順TForm1.FormCreate(送信者:TObjectを)。
28  開始
29 form1.colorを:= clred。
30 form1.TransparentColorValue:= clred。
31 form1.TransparentColor:= はtrue。
32  端部33  
34  終わり
コードの表示

 

おすすめ

転載: www.cnblogs.com/FKdelphi/p/11497583.html