代码示例:你是真的对Delphi很了解了么?

musicwind 2001-05-21 09:27:00
Procedure StepEditor( strgrid: TStringGrid; Step: TStep );
var
sValue, sField: string;
EditorClass: TStepEditorClass;
Editor: TStepEditor;
begin
sField := strgrid.Cells[0, strgrid.Selection.Top];
sValue := strgrid.Cells[1, strgrid.Selection.Top];
EditorClass := EditorClassList.Editors[ sField ];
Editor := EditorClass.Create;
Editor.Field := sField;
Editor.Step := Step;
Editor.Edit( sValue );
Editor.Free;
strgrid.Cells[ 1, strgrid.Selection.Top ] := sValue;
end;
...全文
3743 76 打赏 收藏 举报
写回复
76 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
cyj 2001-05-31
我也经常看一看源程序但我怎么没有看到注册的语句呢(指DELPHI组件的源程序)
  • 打赏
  • 举报
回复
cyj 2001-05-31
好好,为什么我每次都迟到呢每天过的是匆匆忙生怕多丢了网费,哎呀可悲可悲!!!!!!!
  • 打赏
  • 举报
回复
zzy1012 2001-05-28
GuanZhu
  • 打赏
  • 举报
回复
zzy1012 2001-05-28
  • 打赏
  • 举报
回复
musicwind 2001-05-28
yangming_ok(小山羊)写得好。
这个论题的讨论就到这里吧,谢谢大家的参与。
给分。
  • 打赏
  • 举报
回复
kabob 2001-05-28
俺喜欢这类贴子
Musicwind(吾爱是Yaya!)好兄弟,有东西能与大家分享
  • 打赏
  • 举报
回复
yangming_ok 2001-05-27
怎么没人给我分啊!!
  • 打赏
  • 举报
回复
yangming_ok 2001-05-27
怎么没人给我分啊!!
  • 打赏
  • 举报
回复
nagar 2001-05-27
好,好,好!
这个贴子 很好!
在技术上,不敢评论,但至少不是那些 C好 pascal好的 无谓争论.
如果CSDN中多一些技术的讨论,少一些偏激的言行,会更吸引人!
  • 打赏
  • 举报
回复
bushman 2001-05-27
This is a Object Pascal language feature called -- RTTI(RunTime Type Infomation).

Following refers to Delphi help
--------------------------------------------------------------------------
Class-reference types are useful when you want to invoke a class method or virtual constructor on a class or object whose actual type is unknown at compile time.
  • 打赏
  • 举报
回复
likegigi 2001-05-27
45
  • 打赏
  • 举报
回复
GoodHope 2001-05-27
这段代码有什么问题吗?怎么看起来类似ToolsAPI里面的东西?
  • 打赏
  • 举报
回复
yangming_ok 2001-05-26
这是类引用,它允许用户在运行时处理类数据类型。
下面代码能复制你点击的所有组件,甚至Form.
procedure TForm1.Click(Sender ;TObject);
var
ControlText: String;
begin
with TControlClass(Sender.ClassType).Create(self) do
begin
Parent := (sender as TControl).parent;
Left := (sender as TControl).Left;
Top := (sender as TControl).Top;
SetLength(ControlText,50);
(sender as TControl).GetTextBuf(pchar(ControlText),50);
ControlText := pchar(ControlText) + ' *';
SetTextBuf(pchar(ControlText));
end;
end;

Sender.ClassType 得到你点击组件的类类型(TClass型)
TControlClass(Sender.ClassType).Create(self)把TClass型转换成TControlClass型,并建立一对象。


  • 打赏
  • 举报
回复
richardsong 2001-05-25
五爱是Yaya?是孟庭苇嘛?
  • 打赏
  • 举报
回复
musicwind 2001-05-25
哈.....欠!你好!
  • 打赏
  • 举报
回复
musicwind 2001-05-25
当然不是!
  • 打赏
  • 举报
回复
musicwind 2001-05-24
怎么还不刷新?
  • 打赏
  • 举报
回复
musicwind 2001-05-24
我是来刷新我的昵称的!
  • 打赏
  • 举报
回复
wonderxin 2001-05-24
刚入门,我是来向大家求助的!还望多指教!
  • 打赏
  • 举报
回复
davy_david 2001-05-24
"类的类"在OOP术语中叫做"元类".
  • 打赏
  • 举报
回复
加载更多回复
相关推荐
发帖
Delphi
加入

5094

社区成员

Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
申请成为版主
帖子事件
创建了帖子
2001-05-21 09:27
社区公告
暂无公告