Seite 1 von 1

Problem mit Qt-Übersetzungsdatei qt_en.qm

Verfasst: 14. August 2018 17:02
von Tilman Räger
Hallo,

ich habe ein Problem mit der von Qt mitgelieferten Übersetzungsdatei qt_en.qm. Diese hat nur ca. 10% der Größe der anderen Dateien (qt_de.qm, etc.) und lässt sich nicht laden. Die Folge:
- Programm-Start mit Laden der englischen Übersetzung, kein Effekt, da die Standardeinstellung der Qt-Elemente ja englisch ist
- Programm-Start mit Laden der deutschen Übersetzung, ebenfalls ok, da qt_de.qm fehlerfrei geladen wird. Qt-Elemente werden deutsch angezeigt.
- Umschalten vom Deutschen ins Englisch: Die Programmspezifischen Texte werden korrekt übersetzt, die Qt-Elemente bleiben in deutsch. :-(

RemoveTranslator hat leider auch nicht geholfen, irgendwie merkt Qt sich das oder entlädt den Translator nicht korrekt?

Ich lade sowohl den Qt- Translator als auch den Application-Translator mit QTranslator::load(<Locale>, <FileName>, <Prefix>, <Directory>, ...). Beide Übersetzungsdateien werden jeweils über das QLocale-Objekt ausgesucht und geladen. Klappt bei der Application-Übersetzung immer, bei der Qt-Übersetzung leider nur bei Sprache Deutsch, bei Englisch (en, en_GB, en_US) gibt generell einen Fehler.

Kennt jemand das Problem und hat vielleicht schon eine Lösung gefunden?

Das Problem liegt offenslchtlich nicht primär an meinem Rechner, bei der entsprechenden Datei vom Rechner eines Kollegen ist das Verhalten identisch!

Im Voraus schon einmal vielen Dank

Tilman (Räger)

Re: Problem mit Qt-Übersetzungsdatei qt_en.qm

Verfasst: 14. August 2018 17:47
von Christian81
Einfach die alten Translator entfernen - QCoreApplication::removeTranslator()

Re: Problem mit Qt-Übersetzungsdatei qt_en.qm

Verfasst: 17. August 2018 09:42
von Tilman Räger
Funktioniert leider aus irgendwelchen Gründen nicht. Das Problem ist auch weniger das Überlagern von verschiedenen Sprachen sondern das qt_en.qm generell nicht geladen werden kann. Weder mit einem völlig neu erstellten Translator, noch mit einem schon vorher verwendeten. Die Funktion
QTranslator::load("qt_en.qm")
schlägt generell fehl und kommt mit einem Fehler zurück.

Tilman

Re: Problem mit Qt-Übersetzungsdatei qt_en.qm

Verfasst: 17. August 2018 16:42
von Christian81
Ist qt_en.qm auch dort wo die Funktion es erwartet? http://doc.qt.io/qt-5/qtranslator.html#load

/edit: habe gerade noch einmal nachgeschaut - die en - Übersetzungen sind grundsätzlich leer da es nicht nötig ist - intern ist alles korrekt auf Englisch. Also einfach den anderen Translator entladen und schon ist alles wieder auf Englisch.