首页 > 其他分享 >delphi 遍历枚举、获取枚举值的名称

delphi 遍历枚举、获取枚举值的名称

时间:2023-05-10 19:35:05浏览次数:50  
标签:遍历 TypeInfo TAlign delphi System 枚举 TypInfo 常量

遍历枚举、获取枚举值的名称

代码

遍历枚举

uses System.TypInfo;

procedure TForm1.Button1Click(Sender: TObject);
var
  I: TAlign;
begin
  for I := Low(TAlign) to High(TAlign) do
  begin
    Memo1.Lines.Add('名称 ' + GetEnumName(TypeInfo(TAlign), Ord(I)) + ' 值 ' + IntToStr(Ord(I)));
  end;
end;

获取枚举值

uses System.TypInfo;

procedure TForm1.Button2Click(Sender: TObject);
begin
  //获取举类型常量的值
  Memo1.Lines.Add('TAlign中alClient的值' + IntToStr(GetEnumValue(TypeInfo(TAlign), 'alClient')));
  //常量名称不存在时返回-1
  Memo1.Lines.Add('TAlign中ceshi的值' + IntToStr(GetEnumValue(TypeInfo(TAlign), 'ceshi')));
end;

方法

System.TypInfo.GetEnumName

function GetEnumName(TypeInfo: PTypeInfo; Value: Integer): string;

unit

System.TypInfo

将枚举值转换为枚举类型常量的名称。

参数

TypeInfo 描述枚举类型的类型信息记录。 可以通过调用 TypeInfo 函数来获得一个类型的类型信息。

Value 枚举值。

System.TypInfo.GetEnumValue

function GetEnumValue(TypeInfo: PTypeInfo; const Name: string): Integer;

unit

System.TypInfo

将枚举类型常量的名称转换为枚举值。

参数

TypeInfo 描述枚举类型的类型信息记录。 可以通过调用 TypeInfo 函数来获得一个类型的类型信息。

Name 枚举类型常量的名称。匹配不区分大小写。

返回值

返回相应的整数值,如果 Name 与提供的 TypeInfo 中的任何常量不匹配,则返回 -1。

标签:遍历,TypeInfo,TAlign,delphi,System,枚举,TypInfo,常量
From: https://www.cnblogs.com/txgh/p/17389078.html

相关文章

  • delphi执行外部程序并等待结束返回响应
    //写成函数需要引用ShellAPI单元;functionExecuteFileWait(ExecuteFile:string):Integer;//实现执行外部程序,并等待程序结束的函数,返回值为1varSEInfo:TShellExecuteInfo;ExitCode:DWORD;ParamString,StartInString:string;beginFillChar(SEInfo,S......
  • arcpy遍历数据随记
    arcpy.da.SearchCursor和arcpy.SearchCursor的区别两者的都可以实现查询及遍历arcpy.da.SearchCursor:witharcpy.da.SearchCursor("GXB","*",sql_clause=(None,"Orderbyhbm"))ascursor:witharcpy.da.SearchCursor("Schools.shp",("......
  • 单例模型中懒汉模型,饿汉模型,枚举与日志等级
    1.单例模型将构造器私有化,控制创建对象的个数懒汉模型时间换空间符合单线程多线程不可以synchronized同步锁使单例可以一直用但效率不行单例模型一般使用在一台机器Asynchronized异步锁饿汉模型空间换时间可以解决安全利用JVM利用static只初始化一次......
  • delphi 初识内存流: 从设置用户头像到从数据库存取图片到的过程
    所谓"流",就是一段数据或是一块内存;在进行流操作时,我们不必关心流中的数据到底是什么;只需要知道流的大小和当前的指针位置.所以流只有两个属性: Size、Position.对流的操作,不过就是读取和写入.所以流最主要的方法就是Read和Write.在很多控件的使用中,读取主要用Lo......
  • delphi cannot make a visible window modal报错的解决过程
    抛出问题: 排除过程:1.在TFrmChangePW窗口的create事件里打断点,结果发现,根本没停顿,所以判断问题不在TFrmChangePW窗体里,而是showmodal这语句里出了问题,点中断,跳到抛出错误的地方:2.if里的四个条件,检查了第一个,第二个和第四个都是没问题的,第三个(fsModalinFFormS......
  • 二叉树的线索化与遍历
    废话不说,上代码l1packagedataSrtuct.TreeAlgorithm;23importcom.sun.source.tree.Tree;45publicclassThreadBinaryTree{6publicstaticvoidmain(String[]args){7TreeNode2root=newTreeNode2(1,"M");8......
  • Delphi工具开发的windows应用程序,自动化测试工具
    DUnit:DUnit是一种单元测试框架,可以帮助开发人员编写单元测试用例,测试Delphi应用程序的各个模块和组件。TestComplete:一个功能强大的自动化测试工具。可以对Delphi应用程序进行测试,支持多种脚本语言和测试框架,如JScript、VBScript、Python、JUnit等DelphiAutomatedTestingSui......
  • Delphi取整函数
     UsesMathfloor和ceil是mathunit里的函数,使用前要先UsesMath。trunc和round是systemunit里的函数,缺省就可以用。floor直接往小的取,比如floor(-123.55)=-124,floor(123.55)=123trunc直接切下整数,比如trunc(-123.55)=-123,floor(123.55)=123ceil直接往大的取......
  • delphi FastReport 自定义预览窗口显示报表
    FastReport自定义预览窗口显示报表属性和方法TfrxReport.PreviewpropertyPreview:TfrxCustomPreview;指向TfrxPreview组件的链接,在其中显示完成的报表。如果此属性为空,则在标准预览窗口中显示报表。TfrxPreviewTfrxPreview组件是为创建自定义预览窗口而设计的。要显......
  • hdu 1599 find the mincost route(无向图的最小环:求从一个点遍历所有节点以后回到原点
    题目:findthemincostrouteTimeLimit:1000/2000MS(Java/Others)    MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):2801    AcceptedSubmission(s):1115ProblemDescription杭州有N个景区,景区之间有一些双向的路来连接,现在8600想找一条旅游......