diff --git a/src/common/RecourceHelper.cpp b/src/common/RecourceHelper.cpp index ec42f520..a4dd037f 100644 --- a/src/common/RecourceHelper.cpp +++ b/src/common/RecourceHelper.cpp @@ -11,6 +11,7 @@ #include #include "config.h" +#include "common/SpdLogger.h" template<> RecourceHelper* Singleton::instance_ = nullptr; RecourceHelper::RecourceHelper(QObject* parent) @@ -72,7 +73,7 @@ void RecourceHelper::Init() { if (fontName.count() > 0) { iconFont_ = QFont(fontName.at(0)); } else { - qDebug() << "fontName count <= 0 error"; + LOG_WARN("fontName count <= 0 error"); } const QString appName = QApplication::applicationDisplayName(); @@ -83,8 +84,18 @@ void RecourceHelper::Init() { #endif qDebug() << transName; bool success = trans_.load(transName); - if (!success) { - qDebug() << "load translations error"; + if (success) { + QApplication::installTranslator(&trans_); + } else { + LOG_WARN("load translations error: {}", transName.toStdString()); } - QApplication::installTranslator(&trans_); + + const QString systemTransName = QString("./translations/qt_%1.qm").arg( QLocale::system().name()); + success = systemTrans_.load(systemTransName); + if (success) { + QApplication::installTranslator(&systemTrans_); + } else { + LOG_WARN("load translations error: {}", systemTransName.toStdString()); + } + } diff --git a/src/common/RecourceHelper.h b/src/common/RecourceHelper.h index 4f43b90a..e1154b19 100644 --- a/src/common/RecourceHelper.h +++ b/src/common/RecourceHelper.h @@ -33,4 +33,5 @@ private: private: QFont iconFont_; QTranslator trans_; + QTranslator systemTrans_; }; diff --git a/src/translations/qt_zh_CN.qm b/src/translations/qt_zh_CN.qm new file mode 100644 index 00000000..f35616cb Binary files /dev/null and b/src/translations/qt_zh_CN.qm differ