我有一个用delphi-xe2编写的应用程序,现在我正在添加VCL样式支持,所以我想构建一个菜单来选择要加载和应用的vcl样式文件,这部分工作正常,菜单是构建的在运行时基于具有样式文件的文件夹的内容。但现在我想显示vcl样式的名称而不是文件名,就像这个图像一样
如何获取vcl样式文件的样式名称?
答案 0 :(得分:11)
您可以使用TStyleManager.IsValidStyle
函数,传递返回此内容的TStyleInfo
记录以及与vcl样式相关的其他信息。
检查此示例应用
{$APPTYPE CONSOLE}
{$R *.res}
uses
System.SysUtils,
Vcl.Styles,
Vcl.Themes;
var
Style : TStyleInfo;
begin
try
if TStyleManager.IsValidStyle('C:\Users\Public\Documents\RAD Studio\9.0\Styles\RubyGraphite.vsf', Style) then
begin
Writeln(Format('Name %s',[Style.Name]));
Writeln(Format('Author %s',[Style.Author]));
Writeln(Format('Author EMail %s',[Style.AuthorEMail]));
Writeln(Format('Author URL %s',[Style.AuthorURL]));
Writeln(Format('Version %s',[Style.Version]));
end;
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
readln;
end.