这是delphi自带的那个例子
type TControlClass = class of TControl;function CreateControl(ControlClass: TControlClass; const ControlName: string; X, Y, W, H: Integer): TControl;
begin
end;这个和function CreateControl(Control: TControl; const ControlName: string; X, Y, W, H: iNTEGER): TControl;
有什么区别, 用TControl不是一样吗?问个愚蠢的问题, 还望大家不吝赐教:) 谢谢了!~~~
type TControlClass = class of TControl;function CreateControl(ControlClass: TControlClass; const ControlName: string; X, Y, W, H: Integer): TControl;
begin
end;这个和function CreateControl(Control: TControl; const ControlName: string; X, Y, W, H: iNTEGER): TControl;
有什么区别, 用TControl不是一样吗?问个愚蠢的问题, 还望大家不吝赐教:) 谢谢了!~~~
解决方案 »
- delphi中关于stringgrid控件的打印
- 关于access表转txt的问题(悬赏100分)
- 请教一个简单的问题
- 关于ReadOnly的问题
- 不知道该搜什么关键字的小问题
- Ftp客户端编程问题
- 我的存储过程,有关update的,很 烦人
- implementation下面所申明的uses,function,procedure等和在implementation上面申请的有何区别
- 关于Shell_NotifyIcon的问题
- 高分寻找DES加密算法的Delphi/Pascal源程序
- WARNING.Duplicate resource(s);为何会报这个错 应该着么解决
- 用数据库还是文本文件直接操作呢?最好有些具体步骤,菜菜菜啊!!!
如果只是调用构造函数,不必这么做,
这样是为了调用protected部分。
function CreateControl(ControlClass: TControlClass; const ControlName: string; X, Y, W, H: Integer): TControl;
begin
end;这个函数实际上是一个通用的对象生成器.它允许你去生成任意父类型是TControl的类型的对象.
就是说,你传的ControlClass是个类.{强调:是个类}如 Tedit;返回一个对象指针.
function CreateControl(Control: TControl; const ControlName: string; X, Y, W, H: iNTEGER): TControl;这个函数你传了一个对象Control{强调:是个类的实例}如 edit1 ,就是说对象已经生成了.实际上这个函数是没有意义的(如果它的功能如它的名字所提示的).