Название: русский в приложениях QT Отправлено: Sergey B. от Октябрь 25, 2004, 15:13 Как в приложениях Qt, для динамически создаваемых виджетов организовать сделать надписи на русском?
Например void Form1::init() { textEdit1->append("Привет) ; } выводит Ïðèâåò, ñëàäêèé ìîé... То же самое, для всех элементов, для кнопок и т.д. Однако, если надписи делать в Qt Designer, то всё работает нормально!!! Заранее благодарен... Название: русский в приложениях QT Отправлено: Zmey от Октябрь 25, 2004, 15:55 в main() пишешь: после QApplication app( argc, argv ); пишешь QTextCodec::setCodecForTr( QTextCodec::codecForName("utf8") );
а потом если хочишь на русском бери строку в tr(), то есть так: extEdit1->append(tr("Привет")) ; и не забудь в main.cpp добавить #include <qtextcodec.h> Название: русский в приложениях QT Отправлено: Sergey B. от Октябрь 26, 2004, 10:23 Спасибо, всё работает...
:D Название: русский в приложениях QT Отправлено: Sergey B. от Октябрь 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 Название: русский в приложениях QT Отправлено: Alikus от Октябрь 28, 2004, 16:53 Я, например, пользуюсь в большинстве случаев QString::fromLocal8Bit("Привет!");
И все О'к! :wink: Название: Linux<->Win? Отправлено: Vilgeforce от Декабрь 21, 2005, 12:41 Люди, а как быть, если разработка ведется в *nix и все недписи там на KOI8-R, а нужно и виндовую версию делать с CP-1251?
fromLocal8Bit в линухе прекрасно работает, а при переносе кода без изменений в винду мракозябры. Приведенные способы с установкой кодеков в KOI8 или 1251 не помогли. Есть способы? Название: русский в приложениях QT Отправлено: DenKor от Декабрь 21, 2005, 13:52 Забивать текст в кодировке utf-8
Либо текст указывать на английском и в зависимости от системы загружать языковый файл Название: русский в приложениях QT Отправлено: Vilgeforce от Декабрь 21, 2005, 14:26 Цитата: "DenKor" Забивать текст в кодировке utf-8 Либо текст указывать на английском и в зависимости от системы загружать языковый файл Ну, уже была идея с условной компиляцией. А вот с UTF-8 - это как сделать? Можно ли средствами Дизайнера список строк сгенерить? Или в ручную придется? Название: русский в приложениях QT Отправлено: Dendy от Декабрь 21, 2005, 14:32 Любой текст НЕ латинскими буквами в коде - очень плохой стиль программирования на Qt.
В Qt3 ето ещё можно понять - не хотелось таскать за программой лишний файл трансляции. В Qt4 такой проблемьl уже нет. Файл трансляции добавляет как ресурс, вкомпиливается в исполняемьlй файл и открьlвается например как: Код: QTranslator * translator = new QTranslator( ":/ru.qm" ); Советую рубать плохие привьlчки на корню. Название: русский в приложениях QT Отправлено: Vilgeforce от Декабрь 21, 2005, 14:41 Ну, у меня трешка :-(
|