I mange programmer kan man oversætte selve programmet ved at ændre i en txt-fil. Hvordan laver man sådan én tekstfil?
Nu er udtrykket "oversætte" lidt uheldigt i denne sammenhæng fordi det kan forveksles med compilering af et program. Det er vel formodentlig snarere lokalisering/internationalisering af din brugergrænseflade du ønsker?
Først og fremmest så skal alle menu punkter og ledetekster jo initialiseres ved skift af sprog. Det betyder at dit hovedvindue m.m. skal kunne genindlæse tekster. Det klares nemt ved at lave en centraliseret rutine der løser denne opgave. Hvordan denne centraliseret funktion løse denne opgave er en smagssag. Den kan læses fra en ressourcefil, en database eller som du selv er inde på
fra en/flere tekstfil. Nedenstående er tyvstjålet fra online hjælpen og som det fremgår er det en rutine til læsning fra en fil (som kaldes fra din menu Language). Du kan jo lade hver line betyde noget særligt fx. 1 Linie = Først menupunkt, 2 linie = andet menupunkt og således fremdeles.
var
F: TextFile;
S: string;
begin
if OpenDialog1.Execute then { Display Open dialog box }
begin
AssignFile(F, OpenDialog1.FileName); { File selected in dialog }
Reset(F);
Readln(F, S); { Read first line of file }
Edit1.Text := S; { Put string in a TEdit control }
CloseFile(F);
end;
end;
Held og Lykke med projektet.