Ось Ubuntu 10.04LTS, среда разработки Qt Creator
Стрроки вида
setWindowTitle("Простая адресная книга");
или
QMessageBox::information(this, tr("Пустое поле"), tr("Пожалуйста введите имя и адрес"));
выводят нечитаемый текст. При этом строки вбитые в дизайнере форм отображаются нормально.
Примечание:
листинг локали:
LANG=ru_RU.utf8
LC_CTYPE="ru_RU.utf8"
LC_NUMERIC="ru_RU.utf8"
LC_TIME="ru_RU.utf8"
LC_COLLATE="ru_RU.utf8"
LC_MONETARY="ru_RU.utf8"
LC_MESSAGES="ru_RU.utf8"
LC_PAPER="ru_RU.utf8"
LC_NAME="ru_RU.utf8"
LC_ADDRESS="ru_RU.utf8"
LC_TELEPHONE="ru_RU.utf8"
LC_MEASUREMENT="ru_RU.utf8"
LC_IDENTIFICATION="ru_RU.utf8"
LC_ALL=
Примечание:
насколько я понимаю QString по умолчанию использует UTF-8
Примечание:
2 k_max
Ваш ответ быстрее всех натолкнул меня на правильное решение.
trUtf8() действительно оказалось тем что нужно.
Кстати сразу же выяснилось, что QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8")) решает ту же задачу глобально для метода tr() (спасибо osmiev за неувядающий совет RTFM :))
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.