Russian Qt Forum
Ноябрь 23, 2024, 02:29
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Интернационализация, локализация
>
русский в приложениях QT
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: русский в приложениях QT (Прочитано 9742 раз)
Sergey B.
Гость
русский в приложениях QT
«
:
Октябрь 25, 2004, 15:13 »
Как в приложениях Qt, для динамически создаваемых виджетов организовать сделать надписи на русском?
Например
void Form1::init()
{
textEdit1->append("Привет) ;
}
выводит Ïðèâåò, ñëàäêèé ìîé...
То же самое, для всех элементов, для кнопок и т.д.
Однако, если надписи делать в Qt Designer, то всё работает нормально!!!
Заранее благодарен...
Записан
Zmey
Гость
русский в приложениях QT
«
Ответ #1 :
Октябрь 25, 2004, 15:55 »
в main() пишешь: после QApplication app( argc, argv ); пишешь QTextCodec::setCodecForTr( QTextCodec::codecForName("utf8") );
а потом если хочишь на русском бери строку в tr(), то есть так:
extEdit1->append(tr("Привет")) ;
и не забудь в main.cpp добавить #include <qtextcodec.h>
Записан
Sergey B.
Программист
Offline
Сообщений: 544
русский в приложениях QT
«
Ответ #2 :
Октябрь 26, 2004, 10:23 »
Спасибо, всё работает...
Записан
Sergey B.
Программист
Offline
Сообщений: 544
русский в приложениях QT
«
Ответ #3 :
Октябрь 26, 2004, 10:30 »
Да, нашёл ещё в книге "C++ GUI Programming with Qt 3":
QTextCodec *russian =QTextCodec::codecForName("utf8");
QTextCodec::setCodecForTr(russian);
Поддерживаемые кодировки:
Apple Roman
Big5-HKSCS
CP874
CP1250
utf8
CP1252
CP1253
CP1254
CP1255
CP1256
CP1257
CP1258
EUC-JP
EUC-KR
GB2312
GB18030
GBK
IBM-850
IBM-866
ISO 8859-1
ISO 8859-2
ISO 8859-3
ISO 8859-4
ISO 8859-5
ISO 8859-6
ISO 8859-7
ISO 8859-8
ISO 8859-8-I
ISO 8859-9
ISO 8859-10
ISO 8859-11
ISO 8859-13
ISO 8859-14
ISO 8859-15
ISO 10646
UCS-2
JIS7
KO18-R
KOI8-U
Shift-JIS
TIS-620
TSCII
UTF-8
Записан
Alikus
Гость
русский в приложениях QT
«
Ответ #4 :
Октябрь 28, 2004, 16:53 »
Я, например, пользуюсь в большинстве случаев
QString::fromLocal8Bit("Привет!");
И все О'к!
:wink:
Записан
Vilgeforce
Гость
Linux<->Win?
«
Ответ #5 :
Декабрь 21, 2005, 12:41 »
Люди, а как быть, если разработка ведется в *nix и все недписи там на KOI8-R, а нужно и виндовую версию делать с CP-1251?
fromLocal8Bit в линухе прекрасно работает, а при переносе кода без изменений в винду мракозябры. Приведенные способы с установкой кодеков в KOI8 или 1251 не помогли.
Есть способы?
Записан
DenKor
Гость
русский в приложениях QT
«
Ответ #6 :
Декабрь 21, 2005, 13:52 »
Забивать текст в кодировке utf-8
Либо текст указывать на английском и в зависимости от системы загружать языковый файл
Записан
Vilgeforce
Гость
русский в приложениях QT
«
Ответ #7 :
Декабрь 21, 2005, 14:26 »
Цитата: "DenKor"
Забивать текст в кодировке utf-8
Либо текст указывать на английском и в зависимости от системы загружать языковый файл
Ну, уже была идея с условной компиляцией. А вот с UTF-8 - это как сделать? Можно ли средствами Дизайнера список строк сгенерить? Или в ручную придется?
Записан
Dendy
Гость
русский в приложениях QT
«
Ответ #8 :
Декабрь 21, 2005, 14:32 »
Любой текст НЕ латинскими буквами в коде - очень плохой стиль программирования на Qt.
В Qt3 ето ещё можно понять - не хотелось таскать за программой лишний файл трансляции.
В Qt4 такой проблемьl уже нет. Файл трансляции добавляет как ресурс, вкомпиливается в исполняемьlй файл и открьlвается например как:
Код:
QTranslator * translator = new QTranslator( ":/ru.qm" );
Советую рубать плохие привьlчки на корню.
Записан
Vilgeforce
Гость
русский в приложениях QT
«
Ответ #9 :
Декабрь 21, 2005, 14:41 »
Ну, у меня трешка :-(
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...