Russian Qt Forum
Май 09, 2024, 02:41 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Наследование от QSqlQueryModel, краш программы.  (Прочитано 2632 раз)
fenixrus
Гость
« : Апрель 21, 2016, 16:28 »

Здравствуйте, суть такова, что при наследовании от QSqlQueryModel и попытке получить доступ к this->record() выходит краш программы, опытным путём обнаружил, что почему-то record пуст, хотя при выводе данных из переопределённого метода data каждое поле выводится.
Почему он пуст и как починить?
TestSqlQueryModel.h
Код:
#ifndef TESTSQLQUERYMODEL_H
#define TESTSQLQUERYMODEL_H

#include <QObject>
#include <QSqlQueryModel>
#include <QDebug>
#include <QSqlRecord>
#include <QSqlField>
#include <QSqlError>

class TestSqlQueryModel : public QSqlQueryModel
{
public:
    explicit TestSqlQueryModel(QObject *parent = 0);
virtual QVariant data(const QModelIndex &item, int role = Qt::DisplayRole) const;
};

#endif // TESTSQLQUERYMODEL_H
TestSqlQueryModel.cpp
Код:
#include "testsqlquerymodel.h"

TestSqlQueryModel::TestSqlQueryModel(QObject *parent)
    : QSqlQueryModel(parent)
{

}

QVariant TestSqlQueryModel::data(const QModelIndex &index, int role) const
{
    qDebug() << this->record(index.row()).fieldName(index.column());
    return QSqlQueryModel::data(index, role);
}
Записан
fenixrus
Гость
« Ответ #1 : Апрель 22, 2016, 03:25 »

Решил иначе.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.044 секунд. Запросов: 20.