0 / 0 / 0
Регистрация: 05.06.2012
Сообщений: 27
|
||||||
1 | ||||||
tableview, ui и QSqlQueryModel01.04.2013, 19:02. Показов 2413. Ответов 10
Метки нет (Все метки)
я в qt нуб.
подскажите в чем причина. форум перерыл, но не нашел почему не работает qt creator форма создана в нем. поставил виджет tableView на форму пытаюсь открыть таблицу из базы SqLite ошибок при компиляции и линковке не выдает но на форме виджет таблицы пустой. файл базы лежит там же откуда запускается eхе
0
|
01.04.2013, 19:02 | |
Ответы с готовыми решениями:
10
Редактирование данных через QSqlQueryModel+tableView QSqlQueryModel::insertColumns QSqlQueryModel и QML QSqlQueryModel + QTableView + QDateTime |
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
|
|
02.04.2013, 07:21 | 2 |
Ты модель создал в конструкторе....как конструктор выполнится, так твоя модель будет уничтожена....
Так что причем здесь Qt? это в С++ у тебя косяк...... Выделяй память под QSqlQueryModel динамически и все должно заработать, если конечно база не пустая и реально открылась....
0
|
3 / 3 / 1
Регистрация: 17.08.2012
Сообщений: 145
|
|
02.04.2013, 10:13 | 3 |
указывай полный путь к бд. Несмотря на то что результат db.open(); true.
Сама на этом попалась когда-то.
0
|
0 / 0 / 0
Регистрация: 05.06.2012
Сообщений: 27
|
|
02.04.2013, 12:54 [ТС] | 4 |
попробовал
db.setDatabaseName("C:\\prog\\db.dat"); появилось что то типа полей но данных из базы не видно Добавлено через 5 минут база не пустая 100%. можно поподробнее насчет выделения памяти? я делаю в qt creator обычный проэкт с формой. есть всего два файла main.cpp и mainwindow.cpp (+файл формы). на форму ставлю tableview. код выше - из mainwindow.cpp предлагаете в main.cpp вставлять подключение к базе и работу в виджетом?
0
|
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
|
||||||
02.04.2013, 13:05 | 5 | |||||
hoja, В mainwindow.h (он у тебя подключен если что) пишешь:
Добавлено через 1 минуту Это был простейший, не динамический вариант, но должен работать.
0
|
3 / 3 / 1
Регистрация: 17.08.2012
Сообщений: 145
|
||||||
02.04.2013, 13:15 | 6 | |||||
hoja,
вот как сделано у меня и этот код рабочий
0
|
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
|
|
02.04.2013, 13:18 | 7 |
flerris, Это будет работать, но так делать не правильно.
Указатель tableModel после выхода из функции теряется и я так понимаю вы его потом не удаляете....
0
|
3 / 3 / 1
Регистрация: 17.08.2012
Сообщений: 145
|
|
02.04.2013, 13:21 | 8 |
я только сейчас это пишу. Он на кнопку cancel и на кнопку закрытия будет удаляться. Ещё коннект не подключила
0
|
0 / 0 / 0
Регистрация: 05.06.2012
Сообщений: 27
|
|
02.04.2013, 13:23 [ТС] | 9 |
насколько я понял из прочитанного в Tablemodel есть существенный недостаток - не работают sql запросы к базе.
т.е. я не смогу выбрать select Nazv from obrec order by Nazv к примеру поэтому меня интересует именно QueryModel
0
|
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
|
|
02.04.2013, 13:24 | 10 |
flerris, Так что бы удалять нужно сам указатель сохранить куда то, а так он у вас при выходе из функции удалится, но объект модели конечно останется в динамической памяти.
0
|
3 / 3 / 1
Регистрация: 17.08.2012
Сообщений: 145
|
|
02.04.2013, 13:35 | 11 |
на форме кнопка, на неё нажимаю,появляется диалог уже с селектом, пользователь берёт нужные ему данные, вставляет в строку и потом закрывает этот диалог, все указатели удаляются. Зачем сохранять указатель?
0
|
02.04.2013, 13:35 | |
02.04.2013, 13:35 | |
Помогаю со студенческими работами здесь
11
Spin Box and QsqlQueryModel Как соединить QSqlQueryModel с QTableView? Пустые ряды в QTableView + QSqlQueryModel Как сделать checkbox в QTableView с QSqlQueryModel? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |