Sprachumstellung
Sprachumstellung
Hallo,
ich möchte ein Programm in Abhängigkeit der der Spracheinstellung laufen lassen.
Wenn deutsch eingestellt ist auf Deutsch, sonst Englisch.
Wie kann ich die Spracheinstellung abfragen?.
Wenn die Spracheinstellung definiert ist, wie kann ich jetzt dem Programm sagen das er jetzt den entsprechenden String benutzen soll.
Die Strings (Variablen) für jede Sprache sind definiert.
Beispiel:
Text_DE01$= Hallo
Text_DE02$ = Tschüss
Text_EN01$= Hello
Text_En02$= Good bye
Es kommt ein Willkommensfenster
MessageRequester("Info:",Text01$,#PB_MessageRequester_Ok)
Wie schaffe ich jetzt, die Zuordnung der Variable Text01$ in Abhängigekeit der Spracheinstellung , also Text_DE01$ bzw.r Text_EN01$
Gibt es eine Möglichkeit?
In Excel würde ich es über einen Verweis machen. Gibt es sowas auch in PB
Ich hoffe, das ihr versteht, was ich möchte
Dankeschön
ich möchte ein Programm in Abhängigkeit der der Spracheinstellung laufen lassen.
Wenn deutsch eingestellt ist auf Deutsch, sonst Englisch.
Wie kann ich die Spracheinstellung abfragen?.
Wenn die Spracheinstellung definiert ist, wie kann ich jetzt dem Programm sagen das er jetzt den entsprechenden String benutzen soll.
Die Strings (Variablen) für jede Sprache sind definiert.
Beispiel:
Text_DE01$= Hallo
Text_DE02$ = Tschüss
Text_EN01$= Hello
Text_En02$= Good bye
Es kommt ein Willkommensfenster
MessageRequester("Info:",Text01$,#PB_MessageRequester_Ok)
Wie schaffe ich jetzt, die Zuordnung der Variable Text01$ in Abhängigekeit der Spracheinstellung , also Text_DE01$ bzw.r Text_EN01$
Gibt es eine Möglichkeit?
In Excel würde ich es über einen Verweis machen. Gibt es sowas auch in PB
Ich hoffe, das ihr versteht, was ich möchte
Dankeschön
Hallo
Das ist zimlich einfach mach einfach 2 TXT-Dateien in die eine machst du alle Englischen und in die andere alle Deutschen Sätze.
Am Anfang prüfst du welche Sprache der Benutzer verwendet und ladest dann die jeweilige Srachdatei z.B.:
If sprache="deutsch"
Openfile (0, "deutsch.txt")
Else
Openfile (0, "englisch.txt")
EndIf
Danach muss du das programm halt immer die jeweiligen variblen auslesen lassen.
text1$= ReadString()
text2$= ReadString()
Natürlich kannst du das auch in einer schleife machen.
Dann ist jede variable entweder Deutsch oder Englisch
MessageRequester("Info:",Text1$,#PB_MessageRequester_Ok)
MessageRequester("Info:",Text2$,#PB_MessageRequester_Ok)
Das ist zimlich einfach mach einfach 2 TXT-Dateien in die eine machst du alle Englischen und in die andere alle Deutschen Sätze.
Am Anfang prüfst du welche Sprache der Benutzer verwendet und ladest dann die jeweilige Srachdatei z.B.:
If sprache="deutsch"
Openfile (0, "deutsch.txt")
Else
Openfile (0, "englisch.txt")
EndIf
Danach muss du das programm halt immer die jeweiligen variblen auslesen lassen.
text1$= ReadString()
text2$= ReadString()
Natürlich kannst du das auch in einer schleife machen.
Dann ist jede variable entweder Deutsch oder Englisch
MessageRequester("Info:",Text1$,#PB_MessageRequester_Ok)
MessageRequester("Info:",Text2$,#PB_MessageRequester_Ok)
zu 1
zu 2
Die Variablen im Programm haben immer denselben (!) Namen.
Nur am ProgrammAnfang checkst Du auf die jeweilige Sprache und wählst danach die entsprechende Sprachenausgestaltung aus.
Die Sprachenausgestaltung hast Du in externen Datei(en) liegen nach Schema
Code: Alles auswählen
For i=1 To 12
buff_loc$=Space(256)
buff_user$=Space(256)
GetLocaleInfo_( #LOCALE_SYSTEM_DEFAULT ,i,buff_loc$,256)
GetLocaleInfo_( #LOCALE_USER_DEFAULT ,i,buff_user$,256)
Debug buff_loc$+" - "+buff_user$
Next i
Die Variablen im Programm haben immer denselben (!) Namen.
Nur am ProgrammAnfang checkst Du auf die jeweilige Sprache und wählst danach die entsprechende Sprachenausgestaltung aus.
Die Sprachenausgestaltung hast Du in externen Datei(en) liegen nach Schema
Code: Alles auswählen
[deutsch]
Var1.s="ich bin deutsch"
Var2.s="die Eiche"
..
..
[english]
Var1.s="i'm so british"
Var2.s=2the oak"
..
..
pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Erst einmal ein Dankeschön.
Ich möchte nicht unbedingt externe Text-Dateien haben.
Kann ich solche Bereiche auch direkt im Programm integrieren.
Sind jeweils nur ca. 30 Strings pro Sprache.
Soll nur auf Windows (XP, W2k) laufen.
Ich möchte nicht unbedingt externe Text-Dateien haben.
Kann ich solche Bereiche auch direkt im Programm integrieren.
Sind jeweils nur ca. 30 Strings pro Sprache.
Soll nur auf Windows (XP, W2k) laufen.
Zuletzt geändert von HoDam am 15.07.2005 13:05, insgesamt 1-mal geändert.
-
- Beiträge: 6291
- Registriert: 29.08.2004 08:37
- Computerausstattung: Hoffentlich bald keine mehr
- Kontaktdaten:
Warum Dateien? Er kann ja auch nen 2Dimensionalen Array nehmen:
Code: Alles auswählen
Dim Language.s(1, 1)
Language(0, 0) = "Hallo"
Language(0, 1) = "Tschüss"
Language(1, 0) = "Hello"
Language(1, 1) = "Bye"
Lang.l = 0 ;Deutsch = 0; Englisch = 1
Debug Language(Lang, 0)
Debug Language(Lang, 1)
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Oder das hier?
Ist ohne Datei! 
Code: Alles auswählen
DataSection
English:
Data.s Malen.s, Bauen.s, Rennen.s
Deutsch:
Data.s draw.s, build.s, race.s
EndDataSection
Restore English
;restore Deutsch
Read Text1.s
Read Text2.s
MessageRequester("Info:",Text1,#PB_MessageRequester_Ok)
MessageRequester("Info:",Text2,#PB_MessageRequester_Ok)

So habe mich für die Länderkennung 49 entschieden.
und den user ausgelesen.
Noch eine allgemeine Frage zu Arrays.
Bleiben die im Speicher erhalten, oder kann man das Array wieder löschen nachdem die Zuordnung zu den Stringvariablen erfolgt ist?.
und den user ausgelesen.
Noch eine allgemeine Frage zu Arrays.
Bleiben die im Speicher erhalten, oder kann man das Array wieder löschen nachdem die Zuordnung zu den Stringvariablen erfolgt ist?.
Zuletzt geändert von HoDam am 15.07.2005 13:55, insgesamt 1-mal geändert.
Also ich kenne keinen Befehl, wie man sie löschen könnte, warum auch (hier brauchen sie ja nicht soo viel speicher)
Wenn du das Programm beendest sind sie wieder weg ^^.
Außerdem stehen die Variablen ja im array, wen du den löschtest, wären die ja mit weg.
Wenn du das Programm beendest sind sie wieder weg ^^.
Außerdem stehen die Variablen ja im array, wen du den löschtest, wären die ja mit weg.
Johann Wolfgang von Geothe hat geschrieben:Wie dieses oder jenes Wort geschrieben wird, darauf kommt es doch eigentlich nicht an, sondern darauf, daß die Leser verstehen, was man damit sagen wollte.