Design your application so that it can be adapted to various languages and regions without engineering changes. For more information, see:

You can use Qt Creator wizard templates to create Qt widget-based projects with translation support. For more information, see Qt Creator: Creating Projects.


The following examples illustrate how to prepare Qt applications for translation:

  • Hello tr() is a C++ application that demonstrates the creation of a QTranslator object. It also shows the simplest use of the tr() function to mark user-visible source text for translation.
  • Arrow Pad is a C++ application that demonstrates how to make the application load translations depending on the current locale. It also shows the use of the two-argument form of tr() which provides additional information to the translator.
  • Troll Print is a C++ application that demonstrates how to distinguish identical source text in the same context. It also shows how minimize the translator's work when an application is upgraded.
  • Qt Quick I18N demonstrates how to internationalize Qt Quick applications.

The following video shows how to internationalize and localize a simple example application:

© 2023 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.