Programming/qt2026. 4. 28. 11:38

이거.. 넣었던가.. 자동으로 다국어 지원한다고 하면 들어갔던가 기억이 안나네..

#include <QTranslator>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    QTranslator translator;
    const QStringList uiLanguages = QLocale::system().uiLanguages();
    for (const QString &locale : uiLanguages) {
        const QString baseName = "prjname_" + QLocale(locale).name();
        if (translator.load(":/i18n/" + baseName)) {
            a.installTranslator(&translator);
            break;
        }
    }
    MainWindow w;

    w.show();
    return a.exec();
}

 

qt creator 에서

tools - external - linguist - update translation 하면 ts 확장자를 가진 파일들이 생성된다.

 

그리고 그걸 linguist 에서 복수의 파일을 ctrl 누르고 열면 다음과 같이 나오는데

하나의 메시지(원본 텍스트)에 대해서 American(en_US 파일), 한국어(ko_KR 파일) 에 대해서 번역을 진행하고

 

linguist - 파일 - 모두 배포를 눌러주면 확장자가 qm인 파일이 배포되고

 

빌드를 한 후,

아래와 같이 하면 언어 "영어"로 선택되서 실행된다.

LANG=en_US ./prjname
LC_ALL=en_US ./prjname

 

'Programming > qt' 카테고리의 다른 글

qt5 설치하기 on ubunut 22.04  (0) 2026.04.28
Qimage 단색 비트맵  (0) 2026.04.27
qt 위젯 캡쳐  (0) 2026.04.27
qt 다국어지원 관련  (0) 2026.04.22
qt ui loader  (0) 2026.04.01
Posted by 구차니