Здравствуйте, гость ( Вход | Регистрация )
Litkevich Yuriy | Дата 4.3.2010, 13:56 |
стандартная настройка выглядит так: Замени UTF-8 на ту кодировку в которой у тебя исходники. Установка setCodecForCStrings нужна для корректной работы некоторых СУБДвиндовую шару, которая подмонтирована, он отображает вопросиками настраивай кодировку в опция монтирования. Это относится к ФС лунуха, а не к Qt. |
|
igorenja | Дата 4.3.2010, 13:21 |
igorenja, вот этот кодэк зачем устанавливаешь QTextCodec::setCodecForLocale(codec); ?Я так понимаю что именно он задает ту кодировку в которой отображается QTreeView... Если эту строку закоментить то нифига не работает, проверено опытным путём. Сейчас работает вот так: CODE QTextCodec *codec = QTextCodec::codecForName("UTF8"); QTextCodec::setCodecForTr(QTextCodec::codecForName("windows-1251")); QTextCodec::setCodecForLocale(codec); BtnBack = new QPushButton(this); BtnBack->setText(QString(tr("Назад"))); BtnBack->show(); Но появилась новая проблема. виндовую шару, которая подмонтирована, он отображает вопросиками..... Вот теперь вопрос мона ли сделать так чтоб всё отображалось по-человечески? |
|
Litkevich Yuriy | Дата 4.3.2010, 9:28 |
igorenja, вот этот кодэк зачем устанавливаешь QTextCodec::setCodecForLocale(codec); ? |
|
igorenja | Дата 4.3.2010, 7:20 |
Поставил UTF8 и всё заработало, пасиб | |
maint | Дата 4.3.2010, 6:57 |
Доброе время суток! Возможно об этом уже писалось, но я найти не смог.... Ситуация следующая: Есть окошечко в котором есть такой код CODE QTextCodec *codec = QTextCodec::codecForName("windows-1251"); QTextCodec::setCodecForTr(codec); QTextCodec::setCodecForLocale(codec); BtnBack = new QPushButton(this); BtnBack->setText(QString(tr("Назад"))); model = new QDirModel(this); tree = new QTreeView(this); tree->setModel(model); В общем под виндой всё нормально, а вот под линуксом проблема. Если есть имена директорий/файлов на русском языке, то отображаются крокозябры... В то же время кнопочка по русски нормально отображается.. или все держать в UTF-8, или условная компиляция где #ifdef винда QTextCodec *codec = QTextCodec::codecForName("windows-1251"); #endif #ifdef юникс с koi8 QTextCodec *codec = QTextCodec::codecForName("KOI8-R"); #endif #ifdef юникс с UTF8 и т.д |
|
igorenja | Дата 4.3.2010, 6:14 |
Доброе время суток! Возможно об этом уже писалось, но я найти не смог.... Ситуация следующая: Есть окошечко в котором есть такой код CODE QTextCodec *codec = QTextCodec::codecForName("windows-1251"); QTextCodec::setCodecForTr(codec); QTextCodec::setCodecForLocale(codec); BtnBack = new QPushButton(this); BtnBack->setText(QString(tr("Назад"))); model = new QDirModel(this); tree = new QTreeView(this); tree->setModel(model); В общем под виндой всё нормально, а вот под линуксом проблема. Если есть имена директорий/файлов на русском языке, то отображаются крокозябры... В то же время кнопочка по русски нормально отображается.. |
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 23.4.2024, 15:09 |