AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Zwischen Sprachen umschalten?

Ein Thema von AlexII · begonnen am 25. Aug 2009 · letzter Beitrag vom 29. Aug 2009
Antwort Antwort
Seite 2 von 2     12   
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#11

Re: Zwischen Sprachen umschalten?

  Alt 26. Aug 2009, 19:33
Jetzt stehe ich vor der Frage wie man auf die Ursprungssprache wechselt, also ich die Sprache in der das Prog. geschrieben wurde, es gibt ja für sie keine .po-Datei.

Einfach mit

ReTranslateComponent(Self); Geht nicht, wie dann?
  Mit Zitat antworten Zitat
Benutzerbild von Ralf Kaiser
Ralf Kaiser

Registriert seit: 21. Mär 2005
Ort: Wuppertal
932 Beiträge
 
Delphi 10.3 Rio
 
#12

Re: Zwischen Sprachen umschalten?

  Alt 26. Aug 2009, 19:48
Also ich entwickele Anwendungen immer in Englisch (englisches Delphi wegen der Systemmeldungen, eigene englische Originaltexte in den Formularen). Da dxGetText als "Indexsprache" Englisch benutzt gibt es dafür (normalerweise) auch keine PO Datei.

So reicht dann ein simples

UseLanguage('EN');
RetranslateComponent(self);

um wieder aufs Original umzuschalten.

Generell gilt dabei, dass die Originale, also die Strings aus den Formularen, immer dann benutzt werden wenn eine PO Datei für die gewählte Sprache nicht gefunden werden kann! Ein "UseLanguage('WUPPDI')" würde also auch dazu führen, dass die Originale wieder angezeigt werden.
Ralf Kaiser
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#13

Re: Zwischen Sprachen umschalten?

  Alt 26. Aug 2009, 19:50
Ja das klappt, thx.
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#14

Re: Zwischen Sprachen umschalten?

  Alt 29. Aug 2009, 15:16
Komischerweise wird Itemindex der ComboBox immer auf 0 gesetzt
Ich denke weil TranslateComponent(Self); vor dem Auslesen der Daten in die ComboBox geschieht.

Auslesen der Daten in die ComboBox geschieht bei mir aber in OnShow und wenn ich erst danach TranslateComponent(Self); ausführe ist ItemIndex 1 (wird auch so in der .ini abgespeichert), wie erwartet, aber wenn ich das Programm das zweite mal öffne (und immer wieder) ist es wieder 0 Voll komisch
  Mit Zitat antworten Zitat
Benutzerbild von OldGrumpy
OldGrumpy

Registriert seit: 28. Sep 2006
Ort: Sandhausen
941 Beiträge
 
Delphi 2006 Professional
 
#15

Re: Zwischen Sprachen umschalten?

  Alt 29. Aug 2009, 17:12
TranslateComponent() setzt Comboboxen auf -1 bzw. 0 zurück (je nach Typ), da für die Übersetzung die alten Texte raus und die neuen rein müssen. Steht so auch in der Doku. Abhilfe: ItemIndex erst nach TranslateComponent setzen oder notfalls mit einer lokalen Variable merken.
"Tja ja, das Ausrufezeichen... Der virtuelle Spoiler des 21. Jahrhunderts, der Breitreifen für die Datenautobahn, die k3wle Sonnenbrille fürs Usenet. " (Henning Richter)
  Mit Zitat antworten Zitat
AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#16

Re: Zwischen Sprachen umschalten?

  Alt 29. Aug 2009, 17:18
Ach so..... ok muss ich mal ändern. Thx
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:36 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz