Здравствуйте, гость ( Вход | Регистрация )
|
Necros |
14.3.2012, 9:32
Сообщение
#1
|
|
Новичок Группа: Новичок Сообщений: 6 Регистрация: 14.3.2012 Пользователь №: 3262 Спасибо сказали: 0 раз(а) Репутация: 0
|
Хочу сделать отдельный класс для работы с базой, но у меня возникает ошибка, если я в ui->tableView->setModel(); передаю модель созданную в другом классе. Если Создаю ее в этом же классе, то все работает хорошо, но хочется весь SQL утащить в отдельный класс и сделать методы для доступа к базе.
Фрагмент установки модели: dao.h dao.cpp Ошибки: Я пробовал уже и QAbstractItemModel Делать и создавать модель на месте и ей присваивать возвращаемую модель. Подскажите, пожалуйста в чем ошибка, уж больно не хочется страшный копипаст делать в каждом методе. |
|
|
|
![]() |
|
Litkevich Yuriy |
19.3.2012, 18:50
Сообщение
#2
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Necros,
Цитата(silver47 @ 16.3.2012, 10:27) Link при выходе из void Settings::setModel() Ваша модель будет уничтожена, вместе с объектом dao. (если быть точным, то не будет уничтожена, но выпадет из поля видимости, и Вы сможете получить вылет программы в совсем неожиданном месте.) такого не должно произойти, т.к. модель, созданная динамически, будет себе жить поживать. А с помощью:ui->tableView->model() можно будет получить и указатель на неё. Однако, что верно, то верно: Цитата { объект dao использован только для получения модели, а нужен ли для этого целый класс?dao = DAO(); ui->tableView->setModel(dao.getModel()); } |
|
|
|
Necros QTableView и QSqlTableModel в разных классах 14.3.2012, 9:32
xu-user Функция setModel требует указатель на модель. А ва... 14.3.2012, 10:09
silver47 Более того, хочу отметить, что при выходе из void ... 16.3.2012, 8:27
Necros Не подскажете как можно от этого спастись? 19.3.2012, 9:06![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 2.1.2026, 1:44 |