GetClass总得不到结果。

huangjacky 2009-08-18 12:58:31
GetClass是RegGroups总去找寻注册了的类。
看我一个代码吧。

procedure TForm1.btn1Click(Sender: TObject);
var
aClass:TClass;
begin
aClass:=GetClass('TButton');
ShowMessage(aClass.ClassName);
end;


就这么简单。
不过失败了 。

其实我想要的结果是我输入一个字符串 返回一个TClass
谁有这样的函数?
...全文
86 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
火龙岛主 2009-08-19
  • 打赏
  • 举报
回复
GetClass必须先RegisterClass才可以
huangjacky 2009-08-18
  • 打赏
  • 举报
回复
GetClass 貌似必须先注册。。

我主要想实现的是,想搜索,当用户输入一个类名,然后罗列出这个类的所有祖先,如果直接在函数这里
xxxx(TForm)是可以的
关键现在让别人来输入
XXXX('TForm') 这么办?
木老师 2009-08-18
  • 打赏
  • 举报
回复
看下面的对你有没有用.
var
cls:TClass;
obj:TControl;
fld:Pointer;
begin
valid:=true;
try
cls:=getclass(str1);
obj:=cls.create(nil);
try
fld:=obj.fieldaddress(str2);
.....
finally
obj.free;
end;
except
valid:=false;
end;
bdmh 2009-08-18
  • 打赏
  • 举报
回复

var
aClass:TClass;
begin
RegisterClasses([TButton]);
aClass:=GetClass('TButton');
ShowMessage(aClass.ClassName);
end;

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧