Programming/qt
QT 런타임중 언어 변경
구차니
2026. 5. 14. 17:49
아직 테스트는 못해봄.
일단 실행시에 LANG 으로 바꾸는건 해봤는데
실행중에 바꾸어야 할 것 같아서 찾아봄.
| 기존 translator을 제거(QApplication::removeTranslator)하고, 다시 install(위 적용 참조)한다. app.removeTranslator(&translator); translator.load("lang/ko_kr"); app.installTranslator(&translator); installTranslator하면, QEvent::LanguageChange이벤트가 발생한다. 이 이벤트로 번역문자열이 새로운 translator에 의해 적용되도록 한다. void MainWindow::changeEvent(QEvent* event) { if (event->type() == QEvent::LanguageChange) { // 디자이너에 의해 생성된 문자열 ui.retranslateUi(this); // 코드에서 삽입한 문자열 retranslate(); } QMainWindow::changeEvent(event); } |