Autor Beitrag
avenger
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 90



BeitragVerfasst: So 10.05.09 15:48 
Nachedem ich nun schon einige Artikel über dieses Thema gelesen habe Frage ich mich immer noch wie manesnun richtig macht. Manche tauschen im Code die Captions aus und haben dann probleme weil es mit Group Boxen oder ähnlichem nicht richtig funktioniert.

Nun hat Delphi ja auch den Translation Manager und Repisotory eingebaut. Kann mir mal jemand von Grund auf erklären wie man das angeht ? Meine versuche hier scheitern schon beim des Translation Repository :-(
MSCH
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1448
Erhaltene Danke: 3

W7 64
XE2, SQL, DevExpress, DevArt, Oracle, SQLServer
BeitragVerfasst: Mi 13.05.09 19:28 
Ich kann dir nur sagen was ich gemacht habe (zweisprachig DE/EN):
ich habe aber nicht das PRoblem mit der unterschiedlichen Länge, da ich eine
Layoutkomponente von www.devexpress.com benutze, die die Längen automatisch anpasst.

1. Alle Strings liegen in einer Resourcen-DLL
z.b. 10, "deutscher Text"
1010, "english text"
20, "2. deutscher Text"
1020, "2nd. english text"
2. Jedes Caption erhält im Tag den deutschen Wert also 10, 20 u.s.w.
3. im Program wird definiert das deutsch 0 und englisch 1000 als offset gewertet wird.
4. eine Funktion liefert den Resourcenstring mit der ID aus der DLL. Dabei wird der Offset auf die ID die mitgegeben wird, addiert. Sie sucht also entweder 10 oder 1010 u.s.w.
5. Mit wechsel der Sprache wird jedem Caption mitgeteilt, dass eine andere Sprache eingestellt wurde.
6.Caption ruft Funktion (4) auf mit Sprache und Self.tag und setzt sein Text neu

fertig

sicher gibt es noch andere Möglichkeiten. Der Vorteil, Änderungen in der Sprache (hier nur 2) kannst du mit Austauschen der DLL produzieren.

:-msch

_________________
ist das politisch, wenn ich linksdrehenden Joghurt haben möchte?
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8554
Erhaltene Danke: 481

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Mi 13.05.09 19:34 
Ich habe mit Gnu GetText sehr gute Erfahrungen gemacht. Mit entsprechenden Zusatztools (PO-Editor) kann man die Übersetzungen auch von anderen erledigen lassen und die Übersetzungsdateien bei Bedarf nachliefern. Umschalten zur Laufzeit geht auch problemlos - da muss im wesentlichen nur eine Zeile Code ("Retranslate") einfügen und fertig. :D

_________________
We are, we were and will not be.
zuma
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 660
Erhaltene Danke: 21

Win XP, Win7, Win 8
D7 Enterprise, Delphi XE, Interbase (5 - XE)
BeitragVerfasst: Do 14.05.09 08:42 
Wir setzen auch GnuGetText ein und haben bislang auch gute Erfahrungen damit gemacht.
Recht einfach einzusetzen und das übersetzen läßt sich prima von anderen (sogar z. Teil vom Kunden selbst) durchführen. Auch weitere Sprachen lassen sich dann recht schnell (nachträglich) einbinden, einfach eine weitere Po-Datei machen, paar kleinere Änderungen im Programm (Menüpunkt, retranslate-aufruf) und schon kann man z.b. auch Plattdeutsch ;)

_________________
Ich habe nichts gegen Fremde. Aber diese Fremden sind nicht von hier! (Methusalix)
Warum sich Sorgen ums Leben machen? Keiner überlebts!