Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Qt, русские символы в виджете / 8 сообщений из 8, страница 1 из 1
28.05.2007, 11:01
    #34554653
пионер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Qt, русские символы в виджете
Еще есть такая проблема.

Как отобразить в виджете строку с русскими символами?
Строка возвращается некоей функцией как std::string и преобразуется при помощи QString::fromStdString к QString. Но вместо русских символов отображаются иероглифы.
Локаль установлена русская.
...
Рейтинг: 0 / 0
28.05.2007, 11:31
    #34554736
tAZAR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Qt, русские символы в виджете
пионерЕще есть такая проблема.

Как отобразить в виджете строку с русскими символами?
Строка возвращается некоей функцией как std::string и преобразуется при помощи QString::fromStdString к QString. Но вместо русских символов отображаются иероглифы.
Локаль установлена русская.

1) Локаль: cp1251, koi8-r, Utf8.... ???
2)
Код: plaintext
1.
2.
3.
QTextCodec::setCodecForCStrings( QTextCodec::codecForName(strLocale) ); 
QTextCodec::setCodecForTr( QTextCodec::codecForName(strLocale) );
QTextCodec::setCodecForLocale(QTextCodec::codecForName(strLocale)); 

если строки идут из базы, и это MySql -
после QSqlDatabase()::database().open ....
QSqlDatabase()::database().exec("SET names cp1251"); //например
...
Рейтинг: 0 / 0
28.05.2007, 11:45
    #34554771
пионер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Qt, русские символы в виджете
1. текст в window1251

2. Делал,
TextCodec::setCodecForTr( QTextCodec::codecForName(strLocale) );
но это для прошитых в программе строк.

А про остальные кодеки еще не читал, спасибо, попробую.
...
Рейтинг: 0 / 0
28.05.2007, 12:34
    #34554946
tAZAR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Qt, русские символы в виджете
пионер
А про остальные кодеки еще не читал, спасибо, попробую.

тогда для виджетов обязательно
QTextCodec::setCodecForLocale(QTextCodec::codecForName(strLocale));

и желательно всем строкам в исходниках делать
tr("")
...
Рейтинг: 0 / 0
28.05.2007, 12:36
    #34554953
пионер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Qt, русские символы в виджете
Да, это я делаю всегда. Даже начал потихоньку переводить в linguiste
Черт побери как это они ловко придумали
...
Рейтинг: 0 / 0
28.05.2007, 12:37
    #34554955
tAZAR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Qt, русские символы в виджете
Так а проблему решил?
...
Рейтинг: 0 / 0
28.05.2007, 12:41
    #34554968
пионер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Qt, русские символы в виджете
Еще не знаю, я с Qt пока только дома балуюсь. Все равно спасибо
...
Рейтинг: 0 / 0
28.05.2007, 21:24
    #34556393
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Qt, русские символы в виджете
пионерДа, это я делаю всегда. Даже начал потихоньку переводить в linguiste
Черт побери как это они ловко придумалиНу вообще-то, это не они придумали. Утилита gettext существует уже много лет.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Qt, русские символы в виджете / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]