Hallo,
es gibt eine neue Version. Anhang des ersten Posts ist aktualisiert.
Neuerungen:
- Unterstützung für TStrings (TMemo, TComboBox, ...)
- LoadFromFile()-Methode hinzugefügt, um Übersetzungen zur Laufzeit aus Datei zu laden
Lars: Ich denke das mache ich nicht. Ich glaube, wenn man es automatisieren würde, müsste man danach trotzdem noch per Hand an jedem String rumfummeln.. falls das irgendwer machen möchte, die Quellen gibts ja zum Download
Rolf: Das könnte in der Tat ein Fehler sein. Beim ersten Aufruf von Language.Translate() für die Form werden Instanzen von TTranslationMarker erstellt (Owner ist dann die Form). In diesem Objekten wird der ursprüngliche Text des Labels gespeichert, bevor Translate() es übersetzt. Dieser muss bekannt sein, um bei einer Sprachänderung (und anschließendem Aufruf von Translate()) zu wissen, was da mal stand (Originaltext), um das passende Äquivalent in der neu ausgewählten Sprache zu finden. Ich werde mich später drum kümmern und mich dann hier nochmal melden.
Sorry dass ich mir soviel Zeit zum Antworten gelassen habe. Zuviel zu tun..