MessageRequester von Deutsch auf Englisch umschalten?

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Tracker
Beiträge: 53
Registriert: 22.11.2005 21:46
Computerausstattung: Intel Core 2 Quad Q6600, 2,4 GHZ, 2 GB RAM, NVidia GeForce 8600 GT 512 MB, Windows XP Prof. SP3, PureBasic v4.51

MessageRequester von Deutsch auf Englisch umschalten?

Beitrag von Tracker »

Ich habe heute die Benutzeroberfläche meines Programms so angepasst, dass man zwischen deutscher und englischer Anzeige wählen kann.
Abhängig von einer Variablen Language werden die Texte entweder in deutsch oder in englisch angezeigt.

Das einzige, was nach wie vor in deutsch erscheint sind die Buttons Ja, Nein, Abbrechen statt Yes, No, Cancel.

Ich könnte jetzt das Rad neu erfinden und mir eine eigene MyMessageRequester-Funktion schreiben oder die Sprache des Betriebsystems komplett auf Englisch umstellen. Beides, insbesondere die zweite Lösung ist für mich unbefriedigend.

Gibt es irgendeine Möglichkeit dem MessageRequester intern vorzugaukeln, dass die installierte Sprache Englisch ist (ohne andere Anwendungen zu beeinflussen) und er die englischen Buttons Yes, No, Cancel anzeigt?
Ein fehlerfreies Programm ist der Traum jedes Programmierers
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Beitrag von MVXA »

Ich sehe nicht so ganz den Sinn. Warum sollte jemand, der eine
deutsche Version von Windowws installiert hat, auf die englische
Sprache umschalten wollen? Wenn er die englische Sprache
bevorzugt, wird er dann auch ein englisches Windows installiert
haben. Meinst du nicht?
Bild
Benutzeravatar
mk-soft
Beiträge: 3855
Registriert: 24.11.2004 13:12
Wohnort: Germany

Beitrag von mk-soft »

Windows XP (2000) Multilanguages Installieren wenn man es hat.
Dann kann man für jeden Benutzer ein eingende Sprache einstellen.
Ist aber sehr nervig mit der einstellerrei. Wenn man nicht alles richtig einstellt kommen manche Diagloge mal in Deutsch (etc) oder in Englisch hoch.

FF :wink:
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
Tracker
Beiträge: 53
Registriert: 22.11.2005 21:46
Computerausstattung: Intel Core 2 Quad Q6600, 2,4 GHZ, 2 GB RAM, NVidia GeForce 8600 GT 512 MB, Windows XP Prof. SP3, PureBasic v4.51

Beitrag von Tracker »

@MVXA
Ich selbst arbeite mit der deutschen Version.
Die meistverwendete Sprache im Internet ist Englisch.
Wenn ich mein Programm zum Download anbiete, hätte ich gerne ein einheitliches Erscheinungsbild und nicht ein Mischmasch als Benutzeroberfläche.

@mk-soft
Ich arbeite mit Windows XP Prof. SP2 und PureBasic 3.94.
Mein Programm teste ich auf verschiedenen PCs unter Windows 98SE, ME, 2000 und XP.
Wie geht das mit Multilanguages in Verbindung mit PureBasic-Programmen?
Ein fehlerfreies Programm ist der Traum jedes Programmierers
Benutzeravatar
Macros
Beiträge: 1361
Registriert: 23.12.2005 15:00
Wohnort: Olching(bei FFB)
Kontaktdaten:

Beitrag von Macros »

Der Button vom Messagerequester
erscheint bei einer Englischen Xp-Version in Englisch.
Dazu musst du nichts im Programm umstellen.
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

Da hätte ich auch mal eine Frage:
Wie bekomme ich heruas, welche Sprache der User in seinem PC eingestelt hat?

OSVersion() zeigt mir ja an, welches OS er hat, gibt es auch soetws wie OSLanguage() ??
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Benutzeravatar
Tracker
Beiträge: 53
Registriert: 22.11.2005 21:46
Computerausstattung: Intel Core 2 Quad Q6600, 2,4 GHZ, 2 GB RAM, NVidia GeForce 8600 GT 512 MB, Windows XP Prof. SP3, PureBasic v4.51

Beitrag von Tracker »

@Macros
Mir ist schon klar, dass jeder die Buttons in seiner eigenen Landessprache sieht, auch Benutzer in Länder ganz anderer Sprachen, ich hätte nur gerne ein einheitliches Erscheinungsbild.

@AND51
Ich habe mir vorhin deine MessageRequester-Lösung angesehen, die du damals hiltwin gepostet hast.
Wenn alle Stricke reißen, werde ich mir darauf basierend eine eigene MyMessageRequester-Funktion erstellen.

Um das zu vermeiden würde mich interessieren, ob es nicht einen Trick gibt, den vorhandenen MessageRequester so anzupassen, dass ich die Sprache der Buttons vorgeben kann. Die Wahl zwischen Deutsch und Englisch würde mir vollkommen genügen.
Ein fehlerfreies Programm ist der Traum jedes Programmierers
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Das SystemDialoge in der UserSprache erscheinen, ist ein Feature, das man
dem Anwender nicht nehmen sollte. Warum stellt der User sich den eine
Sprache ein? Das einzige was Du machen könntest, eine autom.
Sprachumschaltung Deines Programmes, je nach Usereinstellung.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Tracker
Beiträge: 53
Registriert: 22.11.2005 21:46
Computerausstattung: Intel Core 2 Quad Q6600, 2,4 GHZ, 2 GB RAM, NVidia GeForce 8600 GT 512 MB, Windows XP Prof. SP3, PureBasic v4.51

Beitrag von Tracker »

@ts-soft
Die Variable Language, die als Sprache Deutsch oder Englisch vorgibt, lese ich aus einer Ini-Datei.
Im Systemmenü links oben habe ich einen Eintrag English|German hinzugefügt, mit dem ich die Sprache innerhalb des Programms ändern kann.
Die aktuelle Einstellung wird wieder in der Ini-Datei gespeichert.
Das einzige was Du machen könntest, eine autom.
Sprachumschaltung Deines Programmes, je nach Usereinstellung.
Wie mache ich das für den MessageRequester, ohne dass andere Anwendungen davon beeinflusst werden.
Ein fehlerfreies Programm ist der Traum jedes Programmierers
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Nicht für den MessageRequester, sondern die Sprache Deines Programmes
autom. umschalten, auf das was der User bereits gewählt hat. Der
MessageRequester hat ja die Sprache, die er wünscht.

Wenn Du statt einer Ini, die Sprachen als ResourceSkript hinzugefügt hättest,
würde auch Windows autom. die Sprache wählen.

Manuelle Änderung der Sprache der Standard-Dialoge ist normallerweise
Unerwünscht!!!

Da stellt man mühsam alles in Windows ein, und dann kommen Programme
und wollen dies umgehen :freak:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten