crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Кодировки в QT, Не работает отображение русских букв
Гость_Alex_*
сообщение 7.1.2009, 19:39
Сообщение #1





Гости








    


Кодек назначаю

QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));

и при сборке имею

main.cpp:15: ошибка: неполный тип ‘QTextCodec’ использован во вложенном спецификаторе имени

Без кодека никакие русские буквы в кодировке UTF-8 в QLineEdit на отображаются, только барабер какой-то.

Буду признателен за помощь - Qt только осваиваю.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Litkevich Yuriy
  опции профиля:
сообщение 8.1.2009, 1:25
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


molchanoviv, ты зря ему такой пример пишешь, используешь Виджет вместо модель/представление.

Теперь код для if(createConnection())
  QString tableName;
    
    tableName = "table_1";
    model = new QSqlTableModel(this, database);
qDebug() << model->database();    
qDebug() << "Table list:" << "\n\r"
        << "\t" << model->database().tables();
    model->setTable(tableName);
qDebug() << model->lastError();    

    if (model->lastError().type() != QSqlError::NoError)
    {
        QMessageBox::critical(0, tr("Ошибка"),
                                    tr("Невозможно получить доступ к таблице ")
                                    + "\"" + tableName + "\""
                                    +tr("\n\rПричина: ")
                                    +(model->lastError().databaseText()),
                                    QMessageBox::Cancel);
    }
    model->setEditStrategy(QSqlTableModel::OnManualSubmit);

    view = new QTableView;
    view->setModel(model);


В заголовочник, в объявление класса добавляем:

    QSqlTableModel        *model;    //!< модель данных.
    QTableView            *view;    //!< табличное представление.


и в pro-файл добавляем:
CONFIG += console

чтобы видеть, что сообщает функция qDebug()

-----
Забыл, что в дизайнере все сделано :(
В дизайнере заменяем виджет на представление (QTableWidget -> QTableView)
и строчка:
Цитата(Litkevich Yuriy @ 8.1.2009, 4:13) *
QTableView *view; //!< табличное представление.
не нужна, а нужно в моем примере исправить
Цитата(Litkevich Yuriy @ 8.1.2009, 4:13) *
view = new QTableView;
view->setModel(model);
на:
    tableWidget->setModel(model);
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме
- Alex   Кодировки в QT   7.1.2009, 19:39
- - void*   а чуть больше кода можешь показать?   7.1.2009, 19:45
- - Alex69z   int main(int argc, char * argv[], char * env[]){ Q...   7.1.2009, 19:51
- - molchanoviv   А класс? Класс покажи. А QLineEdit как использует...   7.1.2009, 21:02
- - Alex69z   QLineEdit используется как элемент формы MyWidget....   7.1.2009, 21:24
- - molchanoviv   ЦитатаПосле установки Qt все ее диалоги, где есть ...   7.1.2009, 21:27
- - Alex69z   Не все. Только русскоязычные. Все, что латинницей ...   7.1.2009, 21:34
- - molchanoviv   А код то покажешь? И все-таки проверь кодировку ис...   7.1.2009, 21:36
- - void*   в никсах исходники легко можно конвертнуть в нужну...   7.1.2009, 21:45
- - Litkevich Yuriy   Типовой main.cpp: /*! \file main.cpp ...   7.1.2009, 21:50
- - Alex69z   #include "ui_Form.h" #include <mysql.h...   7.1.2009, 22:26
- - Litkevich Yuriy   Alex69z, что это за каша? Alex69z, опиши к чему э...   7.1.2009, 22:51
- - molchanoviv   Лучше разносить описание класса, и его реализацию ...   7.1.2009, 22:56
- - Alex69z   Для умных людей это может выглядеть как "каша...   7.1.2009, 23:02
- - molchanoviv   Выложи ui-шку я тебе свояю небольшой код. Сравнишь...   7.1.2009, 23:05
|- - Alex69z   Цитата(molchanoviv @ 7.1.2009, 23:05) Выл...   7.1.2009, 23:10
- - Alex69z   <ui version="4.0" > <class...   7.1.2009, 23:08
- - Litkevich Yuriy   Цитата(Alex69z @ 8.1.2009, 2:02) однако э...   7.1.2009, 23:08
|- - Alex69z   С Q_OBJECT уже попробовал - получил пару шишек. С...   7.1.2009, 23:16
- - Litkevich Yuriy   Цитата(Alex69z @ 8.1.2009, 2:10) А вот гд...   7.1.2009, 23:12
- - Litkevich Yuriy   Цитата(Alex69z @ 8.1.2009, 2:16) 1. app.l...   7.1.2009, 23:27
|- - Alex69z   Цитата(Litkevich Yuriy @ 7.1.2009, 23:27)...   8.1.2009, 1:47
- - molchanoviv   я не знаю mysql API обьясни мне пожалуйста что пре...   8.1.2009, 0:18
- - Litkevich Yuriy   molchanoviv, ты зря ему такой пример пишешь, испол...   8.1.2009, 1:25
- - Litkevich Yuriy   Цитата(Alex69z @ 8.1.2009, 4:38) как Вы п...   8.1.2009, 1:53
- - Alex69z   Сделал. QLabel не отображается совсем.   8.1.2009, 2:02
- - Litkevich Yuriy   Цитата(Alex69z @ 8.1.2009, 5:02) QLabel н...   8.1.2009, 2:14
|- - Alex69z   Цитата(Litkevich Yuriy @ 8.1.2009, 2:14) ...   8.1.2009, 2:28
- - Litkevich Yuriy   Цитата(Alex69z @ 8.1.2009, 5:28) На свою ...   8.1.2009, 2:35
|- - Alex69z   Цитата(Litkevich Yuriy @ 8.1.2009, 2:35) ...   8.1.2009, 2:38
- - Litkevich Yuriy   Цитата(Alex69z @ 8.1.2009, 5:38) обираю ч...   8.1.2009, 3:10
|- - Alex69z   Цитата(Litkevich Yuriy @ 8.1.2009, 3:10) ...   8.1.2009, 3:23
- - molchanoviv   Цитата(Litkevich Yuriy @ 8.1.2009, 1:25) ...   8.1.2009, 10:12
|- - Alex69z   Цитата(molchanoviv @ 8.1.2009, 10:12) А с...   8.1.2009, 14:56
- - Litkevich Yuriy   molchanoviv, системная локаль учитывается: Цитата(...   8.1.2009, 16:08
- - Alex69z   Огромное спасибо за помощь. Вы отзывчивые и добрые...   8.1.2009, 20:06
- - molchanoviv   Да незачто, обращайся. На то он и форум, чтобы пом...   8.1.2009, 20:09


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 1.12.2024, 22:54