Delphi类引用示例
示例 引用 Delphi
2023-09-14 08:57:11 时间
相关资料:
https://jingyan.baidu.com/article/bad08e1e2ec23b09c9512148.html
实例代码:
1 unit Unit1; 2 3 interface 4 5 uses 6 Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, 7 Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls; 8 9 type 10 TControlClass = class of TControl; 11 12 TForm1 = class(TForm) 13 RadioGroup1: TRadioGroup; 14 procedure FormCreate(Sender: TObject); 15 procedure RadioGroup1Click(Sender: TObject); 16 procedure FormMouseDown(Sender: TObject; Button: TMouseButton; 17 Shift: TShiftState; X, Y: Integer); 18 private 19 { Private declarations } 20 public 21 { Public declarations } 22 end; 23 24 var 25 Form1: TForm1; 26 27 implementation 28 29 {$R *.dfm} 30 var 31 CtlClassRef: TControlClass; 32 33 procedure TForm1.FormCreate(Sender: TObject); 34 begin 35 RadioGroup1.Width := 400; 36 RadioGroup1.Columns := 3; 37 RadioGroup1.Items.Add('Button'); 38 RadioGroup1.Items.Add('Edit'); 39 RadioGroup1.Items.Add('Checkbox'); 40 RadioGroup1.ItemIndex := 0; 41 CtlClassRef := TButton; 42 end; 43 44 procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; 45 Shift: TShiftState; X, Y: Integer); 46 var 47 NewCtrl: TControl; 48 begin 49 NewCtrl := CtlClassRef.Create(Self); 50 NewCtrl.Name := CtlClassRef.ClassName + IntToStr(Self.ControlCount); 51 NewCtrl.Parent := Self; 52 NewCtrl.Left := X; 53 NewCtrl.Top := Y; 54 end; 55 56 procedure TForm1.RadioGroup1Click(Sender: TObject); 57 begin 58 case RadioGroup1.ItemIndex of 59 0: CtlClassRef := TButton; 60 1: CtlClassRef := TEdit; 61 2: CtlClassRef := TCheckBox; 62 end; 63 end; 64 65 end.
相关文章
- 安装SQL Server2008的示例数据库AdventureWorks 2008「建议收藏」
- TP6.0 搜索器使用示例
- 【CSS】课程网站 网格商品展示 模块制作 ① ( 网格商品展示模块盒子模型测量及样式 | 顶部文本标题盒子测量及样式 | 代码示例 )
- 2023-04-07:求解矩阵得分点问题!——本文探讨蚂蚁金服算法面试题,介绍两种解决方案:递归和数学公式。文章附有代码和示例,适合算法爱好者和面试备战者参考。
- animate动画示例(泪奔的小孩)及stop和delay的使用
- c#3.0实现延迟赋值示例
- 从零开始学android实现计算器功能示例分享(计算器源码)
- AndroidXML数据解析简单示例