获取Delphi中定义的枚举类型的名称和值
来源:互联网 发布:pb脚本执行sql语句 编辑:程序博客网 时间:2024/05/05 04:11
利用TypInfo单元的GetEnumName和GetEnumValue可以遍历任意枚举类型,并获取其名称和值。下面是示例Demo。
procedure TForm1.btnTestClick(Sender: TObject);
var
p: PTypeData;
i: Integer;
s: String;
pt: PTypeInfo;
begin
ListBox1.Items.Clear;
pt := TypeInfo(TWindowState);
if pt.Kind <> tkEnumeration then begin
ShowMessage('不是枚举类型');
Exit;
end;
p := GetTypeData(TypeInfo(TWindowState));
//将获取的枚举类型信息,以枚举名=枚举值的形式加入到ListBox中
ListBox1.Items.beginUpdate;
try
for i := p.MinValue to p.MaxValue do begin
S := GetEnumName(pt,i);
ListBox1.Items.Values[S] := IntToStr(GetEnumValue(pt, S));
end;
finally
ListBox1.Items.EndUpdate;
end;
end;
var
p: PTypeData;
i: Integer;
s: String;
pt: PTypeInfo;
begin
ListBox1.Items.Clear;
pt := TypeInfo(TWindowState);
if pt.Kind <> tkEnumeration then begin
ShowMessage('不是枚举类型');
Exit;
end;
p := GetTypeData(TypeInfo(TWindowState));
//将获取的枚举类型信息,以枚举名=枚举值的形式加入到ListBox中
ListBox1.Items.beginUpdate;
try
for i := p.MinValue to p.MaxValue do begin
S := GetEnumName(pt,i);
ListBox1.Items.Values[S] := IntToStr(GetEnumValue(pt, S));
end;
finally
ListBox1.Items.EndUpdate;
end;
end;
- 获取Delphi中定义的枚举类型的名称和值
- 获取枚举的名称
- Delphi中枚举类型的应用
- Delphi中枚举类型的应用
- delphi中遍历枚举类型的方法
- Delphi中枚举类型的应用
- 使用反射来获取枚举的名称、值和特性
- 枚举类型的定义
- 枚举类型的定义
- 枚举类型的定义和应用
- 宏定义和枚举类型的区别
- 宏定义和枚举类型的区别
- C#控制台 输出枚举类型中所有成员的名称
- java Enum 枚举帮助类,根据值或者名称获取枚举类型对象(从ITEYE搬家过来的)
- C#中循环获取枚举中的名称和值
- Delphi 中枚举类型的遍历 (From 万一博客)
- C++ 在类中定义枚举类型的问题
- C#枚举类型的定义,说明和使用
- 刘德华成都演唱会 歌迷稳得起黄牛稳不起(图)
- B2C电子商务背后的故事
- 如何让IE6-IE7-FF的CSS样式一致
- JS的正则表达式
- 天体物理学家用PS3代替超级电脑
- 获取Delphi中定义的枚举类型的名称和值
- 李开复:算法的力量
- linux系统下C++帮助信息--转载
- 大型社区网站的架构
- 于国富:共享软件作者常见法律问题
- Congratulations
- PS3安装Linux Fedora Core 6教程
- shell判断文件,目录是否存在或者具有权限
- 防止框架页刷新后回到原始页面的问题