Registriert seit: 6. Apr 2005
10.109 Beiträge
|
Re: Font-Attribute in INI-Datei speichern
18. Jul 2006, 07:46
Hier noch eine Alternative - nicht voll ausgebaut und nur um das Prinzip zu demonstrieren:
Delphi-Quellcode:
uses
TypInfo,
IniFiles;
procedure SaveToIniFile(o: TObject; ini: TMemIniFile; sectionName: String);
var
i, iProps: integer;
ppl: PPropList;
ppi: PPropInfo;
begin
ini.EraseSection(sectionName);
iProps := GetPropList(o, ppl);
for i := 0 to Pred(iProps) do
begin
ppi := ppl[i];
case ppi.PropType^.Kind of
tkString,
tkLString:
ini.WriteString(sectionName, ppi.Name, GetStrProp(o, ppi));
tkInteger:
ini.WriteString(sectionName, ppi.Name, IntToStr(GetOrdProp(o, ppi)));
tkEnumeration:
ini.WriteString(sectionName, ppi.Name, GetEnumProp(o, ppi));
tkSet:
ini.WriteString(sectionName, ppi.Name, GetSetProp(o, ppi));
else
ini.WriteString(sectionName, ppi.Name, '???');
end;
end;
end;
procedure TDemoForm.SaveButtonClick(Sender: TObject);
var
fn: TFileName;
ini: TMemIniFile;
begin
fn := ChangeFileExt(ParamStr(0), '.ini');
ini := TMemIniFile.Create(fn);
SaveToIniFile(Font, ini, 'Font');
ini.ReadSectionValues('Font', ValueListEditor.Strings);
ini.UpdateFile;
ini.Free;
end;
Grüße vom marabu
|
|
Zitat
|