Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi FontDialog (https://www.delphipraxis.net/3881-fontdialog.html)

Pseudemys Nelsoni 4. Apr 2003 12:48

ok, danke

Pseudemys Nelsoni 4. Apr 2003 13:25

sorry eine frage noch (ich weiss es nervt) aber das wars dann auch, also

Delphi-Quellcode:
procedure TForm1.ToolButton6Click(Sender: TObject);
begin
  if FontDialog1.Execute then
  settings.WriteString('fontfont', FontDialog1.Font.Name);
end;
da gibts nen fehler, wieso kann ich den fontname nicht in eine ini schreiben? wenn ich den fontname in die caption eines labels tue gehts


gruss silent

Luckie 4. Apr 2003 13:30

Ist das Objekt settings in der Prozedur bekannt?

Pseudemys Nelsoni 4. Apr 2003 13:36

hatte mich im post davor verschrieben, also insgesamt sieht das so aus:

Delphi-Quellcode:
procedure TForm1.ToolButton6Click(Sender: TObject);
begin
  if FontDialog1.Execute then
  settings.WriteString('font', 'font', FontDialog1.Font.Name);
end;
die variable settings ist global definiert:

Delphi-Quellcode:
  var settings: TIniFile;
und in den uses das "inifiles"

wenn ich per button etwas in die ini schreibe, also mit "settings.writestring('test', 'test', 'test');

funktioniert das und es wird "[test] test=test" in die datei geschrieben. Nur hier funktioert das irgendwie nicht, kommt immer "zugriffsverletzung bei adresse 3245135"


grüsse

Pseudemys Nelsoni 4. Apr 2003 13:40

ach da fehlte das "create", also es geht, danke :)

Luckie 4. Apr 2003 13:43

Kommt irgendwo im Quelltext noch ein:
Delphi-Quellcode:
settings := TIniFile.Create(...);
Und warum global? So ist es besser:
Delphi-Quellcode:
var
  settings : TIniFile;
begin
  settings := TIniFile.Create(ChangeFileExt(ParamStr(0));
  try
    if FontDialog1.Execute then
    begin
      settings.WriteStrimng('font', 'font', FontDialog1.Font.Name);
    end;
  finally
    settings.Free;
  end;
Weil global hast du Probleme mit dem Ressourcen-Schutzblock. Desweiteren, weißt du nicht, ob das Objekt initialisiert ist und es ist nicht sehr ressourcen-freundlich.

Pseudemys Nelsoni 4. Apr 2003 14:33

thx, für den code, ich mach das dann so :)

dopeline 20. Dez 2003 13:24

Re: FontDialog
 
ich habe auch mal eine frage: wie kann ich die anderen fontoptionen in der ini mitspeichern?

Delphi-Quellcode:
procedure TFormOptionen.BitBtn1Click(Sender: TObject);
var settings : TIniFile;

begin
 settings := TIniFile.Create(ExtractFilePath(ParamStr(0))+'\FontSettings.ini');
 try
  if FontDialogTabelle.Execute then
  begin
   settings.WriteString('Font', 'Color', FontDialogTabelle.Font.Color);
   settings.WriteString('Font', 'Size', FontDialogTabelle.Font.Size);
   settings.WriteString('Font', 'Name', FontDialogTabelle.Font.Name);
   settings.WriteString('Font', 'Charset', FontDialogTabelle.Font.Charset);
   settings.WriteString('Font', 'Pitch', FontDialogTabelle.Font.Pitch);
   settings.WriteString('Font', 'Style', FontDialogTabelle.Font.Style);
  end;
 finally
  settings.Free;
 end;
end;
ich bekommen da immer fehlermeldungen:
Code:
Inkompatible Typen: 'String' und 'TColor'
Inkompatible Typen: 'String' und 'Integer'
Inkompatible Typen: 'String' und 'TFontCharset'
Inkompatible Typen: 'String' und 'TFontPitch'
Inkompatible Typen: 'String' und 'TFontStyles'
woran liegt das? und wie behebe ich die fehler?


Gruß, dopeline

Pseudemys Nelsoni 20. Dez 2003 13:37

Re: FontDialog
 
wie es die fehler schon sagen, wenn du "WriteString" benutzt musst du auch einen String benutzen. FontDialogTabelle.Font.Color ist vom Typ "TColor" und nicht String. wie du das allerdings hibekommst weiss ich leider auch nicht :\

dopeline 20. Dez 2003 13:47

Re: FontDialog
 
bin beim googeln das hier gefunden... kann man damit was machen? habe es versucht, ergebnislos...


Gruß, dopeline


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:48 Uhr.
Seite 2 von 3     12 3      

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