Fejlene opstår fordi du blander forskellige typer, de skal konverteres før du kan bruge dem sammen.
Her er et eksempel på konvertering mellem string og TFontstyles:
http://www.bsdg.org/swag/DELPHI/0429.PAS.html
At konvertere mellem string og color er lidt lettere, der kan du bruge StringToColor(Str);
hvor str kan f.eks. være :
'$AC142F'
'clRed'
MvH
Stefan Svensson
http://fusket.frac.dk
Har fået StringToColor(Str) til at virke!
Har fået næsten det hele til at virke.
Her er mim INI-file. Det er kun FontStyle jeg ikke kan få til, at fungerer!
[MinSektion]
FontName=Arial
FontSize=10
FontColor=clRed
FontStyle=
Benytter FontDialog komponenten.
procedure TForm1.Button9Click(Sender: TObject);
var
FontName : string;
FontSize : Integer;
FontStyle : string;
FontColor : string;
begin
FontDialog1.Execute;
FontName := FontDialog1.Font.Name;
FontSize := FontDialog1.Font.Size;
//[Error] Unit1.pas(228): Incompatible types: 'String' and 'TFontStyles'
FontStyle := FontDialog1.Font.Style; *****
FontColor := ColorToString(FontDialog1.Font.Color);
{FontName}
MyINI.WriteString('MinSektion', 'FontName', FontName);
Edit1.Text := MyINI.ReadString('MinSektion', 'FontName', 'Ikke fundet');
Memo1.Font.Name:= Edit1.Text;
{FontSize}
MyINI.WriteInteger('MinSektion', 'FontSize', FontSize);
Edit2.Text:= IntToStr(MyINI.ReadInteger('MinSektion', 'FontSize', 10));
Memo1.Font.Size:= Strtoint(Edit2.Text);
{FontStyle}
MyINI.WriteString('MinSektion', 'FontStyle', FontStyle);
Edit3.Text := MyINI.ReadString('MinSektion', 'FontStyle', 'Ikke fundet');
//[Error] Unit1.pas(261): Incompatible types: 'TFont' and 'TCaption'
Memo1.Font:= Edit3.Text; *****
{FontColor}
MyINI.WriteString('MinSektion', 'FontColor', FontColor );
Edit4.Text := MyINI.ReadString('MinSektion', 'FontColor', 'Ikke fundet');
Memo1.Font.Color:= StringToColor(Edit4.Text);
end;
Har fundet dette ved søgning af "Fontstyle" på Google og fik nedstående.
Og har prøvet mange varianter af deisse koder. men uden held!
var Index: string;
Style: TFontstyle
// Speichern:
Index := IntToStr(integer(Style));
// Aufrufen:
integer(Style) := StrToInt(Index);
Håber meget i vil hjælpe mig, har virklig prøvet meget!
Med venlig hilsen
Monie Jacobsen
My mail adress is
monie at sunwind dot dk
Hej
Hvordan ændre jeg nedstående så det virker?
Ved forsæg på valg af FontStyle := IndskrivSaetning('Indskriv et Text','Defaul'); fås fejmeddling se i kideeksemplet.
Og ved udlæsning med Memo1.Font.Style := Edit3.Text; fås fejmeddling se i kideeksemplet.
For nogen af jer kan det værer logisk, men for ikke øved, er det svært.
Det vigtigste her, er at få udlæsning af indholdet i Edit3 til at fungere.
Deklarere:
Var
FontName : string;
FontSize : Integer;
FontStyle : Integer;
FontColor : string;
[Error] Unit1.pas(155): Incompatible types: 'Integer' and 'String'
procedure TForm1.btnFontStyleClick(Sender: TObject);
begin
FontStyle := IndskrivSaetning('Indskriv et Text','Defaul');****** Her er fejlmeddelsen
//procedure WriteString(const Section, Ident, Value: String);
MyINI.WriteInteger('MinSektion', 'FontStyle', 0);
//function ReadString(const Section, Ident, Default: String): String;
Edit3.Text := MyINI.ReadString('MinSektion', 'FontStyle', 'Ikke fundet');
//Memo1.Font.Style:= Edit3.Text;
end;
[Error] Unit1.pas(215): Incompatible types: 'TFontStyles' and 'TCaption'
{Font Style}
//procedure WriteString(const Section, Ident, Value: String);
MyINI.WriteInteger('MinSektion', 'FontStyle', 0);
//function ReadString(const Section, Ident, Default: String): String;
Edit3.Text := MyINI.ReadString('MinSektion', 'FontStyle', 'Ikke fundet');
Memo1.Font.Style := Edit3.Text; *********** Her er fejlmeddelsen
På forhånden rigtig mange tak.
Med venlig hilsen
Monie Jacobsen
My mail adress is
monie at sunwind dot dk