我试图使用 Vcl.FileCtrl 单元中的 MinimizeName 函数在 TLabel 上放置一个很长的文件名,但我不知道如何获取该函数使用的 MaxLen 参数 如果我对一个值进行硬编码,我可以看到有效的结果。但由于表单可以调整大小,我希望它是动态的 = 在调整大小事件时更改。
我尝试过的一些事情是 lblLicenseFile.Width//字符串太长 lblLicenseFile.Width - 10//字符串太长 Trunc(lblLicenseFile.Width/lblLicenseFile.Font.Size)//字符串很短
必须有某种方法来计算这个像素数
MinimizeName(const 文件名: TFileName; Canvas : TCanvas; MaxLen: 整数): TFileName; MaxLen 是可用于在 Canvas 上绘制文件名的长度(以像素为单位)。
最佳答案
要让标签控件自动缩短路径,可以设置 AutoSize
属性为 False 且 EllipsisPosition
如果您使用的是最新版本的 Delphi,请将属性设置为 epPathEllipsis
。
关于delphi - 获取 MaxLen 参数以与 MinimizeName 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16397050/