Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Fonstyle wieder aus ini lesen (https://www.delphipraxis.net/117920-fonstyle-wieder-aus-ini-lesen.html)

SaFu 28. Jul 2008 11:28


Fonstyle wieder aus ini lesen
 
Tach

Und zwar habe ich folegendes Problem.

ich speicher mein Fontstyle so in die INI

Delphi-Quellcode:
WriteInteger(Text,TextStyle,Integer(TFontStyle(FontDialog1.Font.Style)));
Klappt soweit, nur das erneute laden des Fonts ist mir jetzt noch unklar hab schon alles versucht(Hilfe,Suche in DP)

aber irgenwie bekomm ich das net hin wie macht man das.

Delphi-Quellcode:
Laufschrift.Font.Style:= ReadInteger(???????????)
Gruß Sascha

Bernhard Geyer 28. Jul 2008 11:30

Re: Fonstyle wieder aus ini lesen
 
ungetested:

Delphi-Quellcode:
Laufschrift.Font.Style:= TFontStyle(ReadInteger(Text,TextStyle, 0));

SaFu 28. Jul 2008 11:34

Re: Fonstyle wieder aus ini lesen
 
Leider nicht kommt die Fehlermeldung:

[delphi]
Inkompatible Typen: 'TFontStyles' und 'TFontStyle'

uligerhardt 28. Jul 2008 12:35

Re: Fonstyle wieder aus ini lesen
 
Ich hab mal schnell was zusammengeklatscht. Ohne Gewähr. :mrgreen:
Delphi-Quellcode:
// Lesen:
procedure TForm1.FormCreate(Sender: TObject);
var
  ini: TIniFile;
  ifs: Byte;
begin
  ini := TIniFile.Create(IncludeTrailingPathDelimiter(ExtractFilePath(Application.ExeName)) + 'FontTest.ini');
  try
    ifs := Byte(Label1.Font.Style); // Default setzen
    ifs := ini.ReadInteger(Text, TextStyle, ifs);
    Label1.Font.Style := TFontStyles(ifs);
  finally
    ini.Free;
  end;
end;

// Schreiben:
procedure TForm1.FormDestroy(Sender: TObject);
var
  ini: TIniFile;
  ifs: Byte;
begin
  ini := TIniFile.Create(IncludeTrailingPathDelimiter(ExtractFilePath(Application.ExeName)) + 'FontTest.ini');
  try
    ifs := Byte(Label1.Font.Style);
    ini.WriteInteger(Text, TextStyle, ifs);
  finally
    ini.Free;
  end;
end;
HTH,
Uli.

Blackheart 28. Jul 2008 13:09

Re: Fonstyle wieder aus ini lesen
 
Delphi-Quellcode:
Laufschrift.Font.Style:=TFontStyles(TFontStyle(ReadInteger('Text', 'TextStyle', 0)));

SaFu 28. Jul 2008 13:11

Re: Fonstyle wieder aus ini lesen
 
es scheint zu funktioniern

Danke da wär ich nie drauf gekommen.

Ist auch schlecht beschrieben (DelphiHilfe) garnix wär genauso gut gewesen :mrgreen:

DeddyH 28. Jul 2008 13:18

Re: Fonstyle wieder aus ini lesen
 
Zitat:

Delphi-Quellcode:
Integer(TFontStyle(FontDialog1.Font.Style))

Hier wird die Menge Font.Style (= TFontStyles) erst nach TFontStyle und dann nach integer gecastet. Logischerweise muss das dann zum "Aufdröseln" in umgekehrter Reihenfolge passieren.

SaFu 28. Jul 2008 13:22

Re: Fonstyle wieder aus ini lesen
 
Ja danke das hier hat es mir dann klar gemacht

Delphi-Quellcode:
TFontStyle[b]s[/b](TFontStyle)

DeddyH 28. Jul 2008 13:25

Re: Fonstyle wieder aus ini lesen
 
Ich habe gerade kein D2007 zur Hand, aber in der D5-Hilfe zu TFont ist das recht gut beschrieben:
Zitat:

Zitat von Online-Hilfe Delphi 5
Delphi-Quellcode:
type

  TFontStyle = (fsBold, fsItalic, fsUnderline, fsStrikeOut);

  TFontStyles = set of TFontStyle;

property Style: TFontStyles;


SaFu 28. Jul 2008 13:30

Re: Fonstyle wieder aus ini lesen
 
Ja steht da auch aber gut ist was anderes :zwinker:


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz