ランダムTPanelに行と列で生成されたサブ処理方法Tpanelデルファイ

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.ExtCtrls、Vclにします。 StdCtrls;
8  
9  種類
10    TForm1 = クラス(TFormは)
 11      パネル1:TPanel。
12      ボタン1:TButtonは、
13      のLabel1:TLabel。
14      Edit_Rows:TEDIT。
15      Edit_Cols:TEDIT。
16      Label2を:TLabel;
17      LABEL3:TLabel;
18     手続きButton1Click(送信者:TObjectを);
19    プライベート
20      { プライベート宣言} 
21      関数 RetTPanel(名称:文字列、幅、高さ:整数):Tpanel。
22    公衆
23      { 公開宣言} 
24    の端部25  
26  VAR 
27    をForm1:TForm1;
28  
29  実装
30  
31  { $ Rの*の.DFM } 
32  
33  
34  手順TForm1.Button1Click(送信者:TObjectを)。
35  VAR
36    ビット:アレイ TPanel。
37    I、X、Y、行、Colsは、TpanelWidth、TpanelHeight:整数。
38  開始
39    // 3行5列
40    行:= StrToIntDef(edit_Rows.Text、2 )。
41    Colsは:= StrToIntDef(edit_Cols.Text、2 )。
42    TpanelWidth:= Panel1.Width DIV Colsは、
43    TpanelHeight:= Panel1.Height DIV 行。
44    はsetLength(ビット、行* Colsは)。
45    のため = I 0   -長さ(ビット)1  DO
46    開始
47個の      = RetTPanel([I]ビットを' TPanel ' + IntToStr(I)、TpanelWidth、TpanelHeight)。
48    エンド;
49  
50    { 绘制} 
51    X:= 0 ;
52    Y:= 0 ;
53    のための I:= 0  までの長さ(ビット) - 1  行う
54が   始まる
55      ビットを[I] .Parent:= パネル1。
56      ビット[I] .LEFT:=のX。
57      ビット[I] .Top = Y。
58  
59     INC(X、ビット[I] .Width)。
60      であれば、X> = Colsは*ビット[I] .Width 次いで
61は     開始
62        Xが= 0 ;
63        社(Y、ビット[I] .Height)。
64      端部65    エンド;
66  端部67  
68  機能 TForm1.RetTPanel(名称:文字列;幅、高さ:整数):Tpanel。
69  開始
70    = Tpanel:検索結果を。作成(応用)。
71    Result.Name:= 名;
72    Result.Caption:= 名;
73   Result.Color:= clRed。
74    Result.Width:= 幅。
75    Result.Height = 高さ、
76は    Result.Enabled:= 真;
77    Result.Visible:= 真;
78  端部79  
80  エンド

 

おすすめ

転載: www.cnblogs.com/studycode/p/11622252.html