Qt

Кнопки QMessageBox на русском языке

Когда в проекте принципиально нужен русский язык абсолютно во всех надписях, включая текст стандартных кнопок всплывающих сообщений, есть пара способов это обеспечить. Но тот, который я хочу описать здесь — самый простой и удобный.

Ищем файл qt_ru.qm в папке translations. У меня это такой путь: d:\Qt\5.8\mingw53_32\translations\. Копируем в рабочую папку проекта, а в main.cpp пишем следующее:

QApplication a(argc, argv);
QTranslator qtTranslator;
qtTranslator.load("qt_" + QLocale::system().name(),
			QLibraryInfo::location(QLibraryInfo::TranslationsPath));
a.installTranslator(&qtTranslator);

На этом все! Запускаем проект и получаем везде на стандартных кнопках сообщений русский текст.

QMessageBox предлагает свои методы присваивания любого желаемого текста кнопкам (void QMessageBox::setButtonText(int button, const QString &text)). Но для этого каждый раз при создании сообщения нужно прописывать это в ручную. А при использовании перевода это делается один раз и навсегда, как говорится 🙂

Оставьте своё мнение...

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.