【发布时间】:2020-11-06 18:31:43
【问题描述】:
我知道我在很久以前就能够做到这一点,所以它一定是可能的。
我想将一个项目(例如组件的 align 属性 alNone)转换为我可以保存、显示等的字符串。我知道我可以获取字节值并提出自己的文本,但我确信有更直接的方法。
例如我想...
var S:string;
S:= somehow(Form.Align);
ShowMessage(S);
“不知何故”在哪里,但是我将表单的 align 属性的设置转换为字符串,例如“alNone”。
【问题讨论】:
-
或者简单地说,在你的情况下
S := TRttiEnumerationType.GetName<TAlign>(Form.Align) -
@Graymatter 是的,这是同一个问题,但答案也是错误的,因为重新发明轮子
-
@Graymatter 他正是我的答案。不喜欢的人
-
@JensBorrisholt 这取决于 Delphi 的版本。我认为
TRttiEnumerationType仅在 XE2 中引入,因此其他选项是否有效取决于 Delphi 的版本。 -
由于泛型,只要是 Delphi 2009+ 就正确
标签: string delphi enumeration