С Новым годом! Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.58/111: Рейтинг темы: голосов - 111, средняя оценка - 4.58
UNIX-way
712 / 495 / 49
Регистрация: 15.01.2009
Сообщений: 1,720
1

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

12.02.2010, 17:51. Показов 20973. Ответов 7

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

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

Во вложении проект под Qt4, который показывает работу этой конструкции. (только проект, экзешника нет. думаю, скомпилировать не проблема, зато размер вложения меньше.)
Вложения
Тип файла: zip testRUS.zip (2.9 Кб, 127 просмотров)
3
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
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
Эксперт С++
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
12.02.2010, 18:59 2
это чисто вендовская проблема, т.к. кодировка странная.
0
UNIX-way
712 / 495 / 49
Регистрация: 15.01.2009
Сообщений: 1,720
12.02.2010, 21:58  [ТС] 3
Возможно. На линуксе не проверял (под винду сейчас проект делаю).
Но вряд ли будет хуже если писать такой же код и в линуксе (если планируется работа софтины на винде).
0
2773 / 341 / 22
Регистрация: 15.01.2008
Сообщений: 2,614
14.02.2010, 22:50 4
Вот ещё так можно:
C++
1
2
    QTextCodec *langcodec=QTextCodec::codecForName("CP1251");
    QTextCodec::setCodecForTr(langcodec);
C++
1
QLabel label(QObject::tr("Текст"));
1
1 / 1 / 0
Регистрация: 10.06.2014
Сообщений: 2
05.01.2015, 22:41 5
Delphin_KKC спасибо за элегантное решение
0
80 / 69 / 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
63 / 63 / 15
Регистрация: 20.08.2014
Сообщений: 593
07.01.2015, 09:13 7
Я так делаю:
C++ (Qt)
1
QLabel *label = new QLabel(trUtf8("Текст"));
Пишу под винду и линух одновременно, но поскольку на винду у меня дикая аллергия, то пишу под линухом, а под винду только пересобираю. Проблем с кодировками не обнаружил.
0
48 / 48 / 14
Регистрация: 30.03.2009
Сообщений: 523
07.01.2015, 21:11 8
dark.k, в QtCreator'е можно в настройках указать в какой кодировке сохранять исходники, всегда ставлю utf8
0
07.01.2015, 21:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
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
Copyright ©2000 - 2024, CyberForum.ru