![]() |
Re: Sprache ändern mit ?
Zuerst einmal vielen Dank für die Antworten! :-D
Hallo! Ich hab zu diesem Thema nun auch in der Delphi Hilfe gesucht und etwas gefunden: Zitat:
mfg gauggi |
Re: Sprache ändern mit ?
Datei -> Neu -> DLL (?) oder so ;)
ich würde das ganz einfach über INI-Dateien machen. So wie du es schon gemacht hast musst du zuerst aus einer Datei die gerade eingestellte Sprache auslesen. Dann öffnest du die Datei mit dem ausgelesenen Namen. Wenn du also 'German' als Sprache ausgelesen hast, öffnest du mit deiner inifile die Datei GERMAN.INI. (Vorraussetzung ist natürlich dass die Datei zuerst erstellt werden muss ;)) aus dieser geöffneten Datei kannst du jetzt alle Strings auslesen:
Delphi-Quellcode:
Die INI-Dateien baust du so auf:
ini:=tinifile.create('test.ini');
language:=ini.readstring('programm','sprache','Alternativtext, z.B. "English"'); ini.free; ini:=tinifile.create(language+'.ini'); button1.caption:=ini.readstring('strings','button1.caption','Alternativtext falls der String nicht aus der Datei gelesen werden kann'); form1.caption:=... test.ini (welche du schon hast)
Delphi-Quellcode:
German.ini
[Programm]
Sprache=German (...)
Code:
und die english.lng eben analog dazu:
[Info]
Languagename=Deutsch Englishname=German Copyright=ichbins [Strings] form1.caption=Dies ist der Titel von Form1 button1.caption=Ja showmessage1=Hallo. Dies ist ein sinnloser Text. ... English.ini
Code:
Die Sprachinidatei kannst du den ganzen Programmverlauf geöffnet halten und immer die Sprachstirngs die du benötigst einlesen, wie z.B. bei dem Showmessage, das irgendwann angezeigt wird etc.
[Info]
Languagename=English Englishname=English Copyright=ichbins [Strings] form1.caption=This is the title of Form1. button1.caption=Yes showmessage1=Hello. This is a senceless text. ... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:22 Uhr. |
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