Knowledge Base Nr: 00190 qtmultilang.cpp - http://www.swe-kaiser.de

Downloads:

QT: Mehrsprachigkeit implementieren

  
//in .pro datei aufnehmen:

TRANSLATIONS = app_de.ts \
app_fr.ts \
app_us.ts

//im sourcecode alle strings mit tr() kapseln:

printf(tr("*** error: sprachdatei <%s> kann nicht geladen werden!\nexit programm! ***\n", (const char*)strLangFile));
showError(tr("Aufträge können nicht gelesen werden!"));
setHinweistext(tr("WAAGENTEST: Eichgewicht vorne/links - Quittieren!"), COLOR_QUITTIEREN);

//sprache in programm beim hochstarten auswählen (dynamische umschaltung funktioniert anders!)

QTranslator* m_pAppTrans;

{
...
//set language
QString strLangFile;

m_pAppTrans = new QTranslator;

strLangFile.sprintf("%s/app_%s.qm", lpszLangPath, getDB()->m_arb.szLanguage);
bool bSucc2 = m_pAppTrans->load(strLangFile);
if (!bSucc2)
{
printf(tr("*** error: sprachdatei <%s> kann nicht geladen werden!\nexit programm! ***\n", (const char*)strLangFile));
exit(3);
}

pApp->installTranslator(m_pAppTrans);
...
}

//Übersetzen:

linguist&

//Sprachmodule erzeugen:

lrelease -verbose c-verwiege.pro

//applikation bauen

qmake und make