Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.96/81: Рейтинг темы: голосов - 81, средняя оценка - 4.96
Delphin_KKC
UNIX-way
712 / 495 / 49
Регистрация: 15.01.2009
Сообщений: 1,721
1

QString и русский текст

12.02.2010, 17:51. Просмотров 15439. Ответов 7

Возник вопрос как вывести в метку на форме (QLabel) текстовую строку на русском языке.
Вначале думал задать его тут. Но потом всёж нашёл решение и подумал что неплохо бы им поделиться тут.
Тем более что поиском на сайбере я не нашёл ответа на свой вопрос.

В слоте, отвечающем за обработку щелчка по кнопке на форме:
C++
1
ui->label->setText(QString::fromLocal8Bit("Test пройден"));
И будет выведен нормальный русский язык, а не кракозябры.

Во вложении проект под Qt4, который показывает работу этой конструкции. (только проект, экзешника нет. думаю, скомпилировать не проблема, зато размер вложения меньше.)
3
Вложения
Тип файла: zip testRUS.zip (2.9 Кб, 124 просмотров)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2010, 17:51
Ответы с готовыми решениями:

Из Std в QString, русский текст, потеря данных, Qt 5.3.2
Доброго времени суток! Ребят, встретился с такой проблемой, что не получается из std...

QFile::rename(QString name1, QString name2) не работает под Win
Добрый день! Столкнулся с проблемой: QFile::rename(QString name1, QString name2) не работает под...

Как разбить QString строку на подстроки, т.е. на qlist <qstring> ?
Как разбить QString строку: &quot;/michaeltosell&quot;, &quot;/vorago&quot;, &quot;/yanochka147&quot;, &quot;gertylohhg&quot;, на...

Cтрока: Как сконвертировать QString в const QString?
Доброго времени суток. Как сконвертировать QString в const QString

7
niXman
Эксперт С++
3207 / 1456 / 73
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
12.02.2010, 18:59 2
это чисто вендовская проблема, т.к. кодировка странная.
0
Delphin_KKC
UNIX-way
712 / 495 / 49
Регистрация: 15.01.2009
Сообщений: 1,721
12.02.2010, 21:58  [ТС] 3
Возможно. На линуксе не проверял (под винду сейчас проект делаю).
Но вряд ли будет хуже если писать такой же код и в линуксе (если планируется работа софтины на винде).
0
Vanstorm
2771 / 335 / 22
Регистрация: 15.01.2008
Сообщений: 2,616
14.02.2010, 22:50 4
Вот ещё так можно:
C++
1
2
    QTextCodec *langcodec=QTextCodec::codecForName("CP1251");
    QTextCodec::setCodecForTr(langcodec);
C++
1
QLabel label(QObject::tr("Текст"));
1
MOHAX
1 / 1 / 0
Регистрация: 10.06.2014
Сообщений: 2
05.01.2015, 22:41 5
Delphin_KKC спасибо за элегантное решение
0
dark.k
78 / 67 / 9
Регистрация: 11.12.2009
Сообщений: 393
06.01.2015, 16:10 6
в main.cpp после QApplication строки:
C++ (Qt)
1
QTextCodec::setCodecForTr(QTextCodec::codecForTr("system"));
Ещё одно, прыгая с линукса на виндовс, надо учитывать, что текст исходников сам по себе в разной кодировке, у линухи UTF-8, у винды ANSI если не ошибаюсь.
0
Pingvinoff
62 / 62 / 15
Регистрация: 20.08.2014
Сообщений: 593
07.01.2015, 09:13 7
Я так делаю:
C++ (Qt)
1
QLabel *label = new QLabel(trUtf8("Текст"));
Пишу под винду и линух одновременно, но поскольку на винду у меня дикая аллергия, то пишу под линухом, а под винду только пересобираю. Проблем с кодировками не обнаружил.
0
nullpointer
46 / 46 / 14
Регистрация: 30.03.2009
Сообщений: 523
07.01.2015, 21:11 8
dark.k, в QtCreator'е можно в настройках указать в какой кодировке сохранять исходники, всегда ставлю utf8
0
07.01.2015, 21:11
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.01.2015, 21:11

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

QList <QPair <QString, QString> > - сортировка пузырьком
Возможно ли? =) Есть список городов с их идентификационным номером, например:...

Поиск в QMap<QString, QString> по регекспу
Есть QMap&lt;QString, QString&gt;. Есть некоторое регулярное выражение, по которому требуется найти все...

Русский текст из файла
Прошу прощения за глупый вопрос. При загрузке текстового файла в textEdit русские символы пишутся...

Post запрос - русский текст
Помогите пожалуйста разобраться QNetworkRequest request; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.