Thema: Delphi VCL Skins aus Datei

Einzelnen Beitrag anzeigen

mytbo

Registriert seit: 8. Jan 2007
461 Beiträge
 
#6

AW: VCL Skins aus Datei

  Alt 7. Feb 2023, 18:05
Wie man das sonst aus der Stildatei auslesen könnte weiß ich leider nicht.
Achtung: Der folgende Quelltext ist mORMot kontaminiert.
Delphi-Quellcode:
uses
  Vcl.Styles, Vcl.Themes,
  mormot.core.base,
  mormot.core.text,
  mormot.core.search,
  mormot.core.os;
  
type
  TStyleItem = record
    fileName: TFileName;
    styleName: String;
  end;

const
  STYLE_FOLDER = 'Styles';
  STYLE_SEARCHMASK = '*.vsf';

var
  styleItems: array of TStyleItem;
begin
  var styleInfo: TStyleInfo;
  var styleItemCount: Integer;
  var styleFolder: TFileName := MakePath(['c:\Users\Public\Documents\Embarcadero\Studio\22.0', STYLE_FOLDER], True);
  var styleFiles: TFileNameDynArray := FileNames(styleFolder, STYLE_SEARCHMASK);
  for var i: Integer := 0 to High(styleFiles) do
  begin
    if TStyleManager.IsValidStyle(styleFiles[i], styleInfo) then
    begin
      styleItemCount := Length(styleItems);
      SetLength(styleItems, styleItemCount + 1);
      styleItems[styleItemCount].fileName := styleFiles[i];
      styleItems[styleItemCount].styleName := styleInfo.Name;
    end;
  end;

  var styleNames: RawUtf8;
  for var i: Integer := 0 to High(styleItems) do
    AddToCsv(StringToUtf8(styleItems[i].styleName), styleNames, sLineBreak);

  ShowMessage(Utf8ToString(styleNames));
Bis bald...
Thomas

Geändert von mytbo ( 7. Feb 2023 um 18:07 Uhr)
  Mit Zitat antworten Zitat