rtti专题提供rtti的最新资讯内容,帮你更好的了解rtti。
首先,为我的英语道歉,我希望我在这里写的是有道理的.现在我的问题. 如何使用TypInfo.GetEnumName()获取Variant的内容类型的字符串表示形式.我试过以下,没有运气,我得到一个数字表示. myString := GetEnumName( TypeInfo(TVarType), TVarData(myVar).VType ); 谢谢. 只需使用内置的Delphi函数来获取Vari
我正在使用一个属性检查器( for example the nice JvInspector in the JVCL library),它很好地让我查看和编辑我的类’TMyClass’的已发布属性. TMyClass来自TFrame,并且有一些已发布的属性是我需要查看和编辑的唯一属性.当然,TFrame有很多VCL属性,都是已发布的,我也看到了. 如何抑制祖先属性RTTI并留下我自己发布的属性?我
我会自己回答这个问题,但如果你比我快,或者不喜欢我的解决方案,请随时提供你的答案.我只是想出了这个想法,并希望对此有一些看法. 目标:一种可读的配置类(如INI文件),但不必写入(并且在添加了新的配置项之后进行调整)加载和保存方法. 我想创建一个类 TMyConfiguration = class (TConfiguration) ... property ShowFlags : Bool
我最近使用delphi xe,但exe大小是非常大的,因为rtti(我想) 如何删除rtti,我可以使我的应用程序大小像delphi 2009应用程序(490 kb)没有comprssion;什么是rtti的用法? 简而言之(全面的故事由飞溅的答案中的链接提供): {$RTTI EXPLICIT METHODS([])PROPERTIES([])FIELDS([])} 请注意,as of XE5
我正在使用 TRttiMethod.Invoke函数创建一个类的实例,但是当构造函数或方法重载时,rtti不会调用正确的方法. 我写了一个示例应用来说明我的问题. program ProjectFoo; {$APPTYPE CONSOLE} {$R *.res} uses Rtti, System.SysUtils; type TFoo=class public c
我试图在Delphi XE或更高版本中使用增强的RTTI功能来读取和写入对象到 XML.到目前为止,我已经成功地使用整数,浮点数,字符串,枚举类型,集合和类,但无法正确输出或读取记录.问题似乎是获取一个实例(指针)到record属性. //Outputs Properties To XML procedure TMyBase.SaveToXML(node: TJclSimpleXMLElem);
我想使用RTTI在设计时而不是运行时检查项目源文件中包含的类型. 据我所知,这是不受支持的,但在this question的评论中的讨论表明,这是可能的,已经有几个Delphi版本.这是我第一次听说这个功能是可用的,但是我一直无法为自己重现. 这是我的测试例子.它使用一个简单的TListBox后代TMyListBox,它具有一个字符串属性TypeToExplore,当它设置时,填写列表框,其中输入
首先,有关我的情况的一点解释: 我有一个由不同类实现的示例接口,这些类可能并不总是具有共享祖先: IMyInterface = interface ['{1BD8F7E3-2C8B-4138-841B-28686708DA4D}'] procedure DoSomething; end; TMyImpl = class(TInterfacedPersistent, IMy
我有这门课: TMyClass = class public function DoSomethingNice(const Value: string = 'Yes please!'): Boolean; end; 现在,使用RTTI,是否可以获取方法DoSomethingNice的参数值的默认值?如果是这样,怎么样? 我最感兴趣的是D2010解决方案,但XE也会这样做. 这是不可能的,因为R
我正和TValue一起玩 我在一个空白项目中编写了这段代码: uses RTTI; procedure TForm1.FormCreate(Sender: TObject); var s: string; b: Boolean; begin s := TValue.From<Boolean > (True).ToString; b := TValue.From<string