whats new ¦  programming tips ¦  indy articles ¦  intraweb articles ¦  informations ¦  links ¦  interviews
 misc ¦  tutorials ¦  Add&Win Game

Tips (1541)

Database (90)
Files (137)
Forms (107)
Graphic (114)
IDE (21)
Indy (5)
Internet / LAN (130)
IntraWeb (0)
Math (76)
Misc (126)
Multimedia (45)
Objects/
ActiveX (51)

OpenTools API (3)
Printing (35)
Strings (83)
System (266)
VCL (242)

Top15

Tips sort by
component


Search Tip

Add new Tip

Add&Win Game

Advertising

27 Visitors Online


 
...save / load TFont information to an INI file?
Autor: Mike Shkolnik
Homepage: http://www.scalabium.com
[ Print tip ]  

Tip Rating (16):  
     


uses
  
Inifiles;

procedure SaveFont(FName: string; Section: string; smFont: TFont);
var
  
FStream: TIniFile;
begin
  
FStream := TIniFile.Create(FName);
  try
    
FStream.WriteString(Section, 'Name', smFont.Name);
    FStream.WriteInteger(Section, 'CharSet', smFont.CharSet);
    FStream.WriteInteger(Section, 'Color', smFont.Color);
    FStream.WriteInteger(Section, 'Size', smFont.Size);
    FStream.WriteInteger(Section, 'Style', Byte(smFont.Style));
  finally
    
FStream.Free;
  end;
end;

procedure LoadFont(FName: string; Section: string; smFont: TFont);
var
  
FStream: TIniFile;
begin
  
FStream := TIniFile.Create(Fname);
  try
    
smFont.Name    := FStream.ReadString(Section, 'Name', smFont.Name);
    smFont.CharSet := TFontCharSet(FStream.ReadInteger(Section, 'CharSet', smFont.CharSet));
    smFont.Color   := TColor(FStream.ReadInteger(Section, 'Color', smFont.Color));
    smFont.Size    := FStream.ReadInteger(Section, 'Size', smFont.Size);
    smFont.Style   := TFontStyles(Byte(FStream.ReadInteger(Section, 'Style', Byte(smFont.Style))));
  finally
    
FStream.Free;
  end;
end;

//Example:
//Beispiel:

//Save Font
procedure TForm1.Button1Click(Sender: TObject);
begin
  
SaveFont('font.ini', 'label', label1.Font);
end;

procedure TForm1.Label1DblClick(Sender: TObject);
begin
  if 
FontDialog1.Execute then
    
label1.Font := FontDialog1.Font
end;

//Load Font
procedure TForm1.Button2Click(Sender: TObject);
begin
  
LoadFont('font.ini', 'label', label1.Font);
end;


 

Rate this tip:

poor
very good


Copyright © by SwissDelphiCenter.ch
All trademarks are the sole property of their respective owners