Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
Terep |
20.11.2010, 11:11
Сообщение
#1
|
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 20.11.2010 Пользователь №: 2204 Спасибо сказали: 0 раз(а) Репутация: 0
|
Приветствую.
Я здесь новенький. Хотя читаю форум и сайт постоянно, решил зарегаться только сейчас. Не бейте палками, знаю, что тема избитая, но мне нужна помощь. Долгие чтения статей на trolltech.com, на этом форуме/сайте мне не помогли. Пишу диплом на QT, параллельно изучая ее. Итак проблема. Код: Работает прекрасно, проблем не возникает. Но когда я начинаю его пользовать в своем дипломнике, начинаются проблемы. В поиске решения, я написал небольшой пример, наглядно демонтрирующий проблему: Проблема заключается в том, что в первом варианте таблица отображается нормально. Во втором (необходимом) это выглядит так: ![]() То есть сам Грид куда то девается. Прошу помощи. Уже вот вот грядет защита ps пишу под 7ой виндой, QT 2010.05 |
|
|
|
|
BRE |
20.11.2010, 11:21
Сообщение
#2
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44
|
|
|
|
|
|
Terep |
20.11.2010, 11:45
Сообщение
#3
|
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 20.11.2010 Пользователь №: 2204 Спасибо сказали: 0 раз(а) Репутация: 0
|
Сделал так:
Где-то еще проблема... View теперь совсем отсутствует. Unable to find table tereptab. Буду разбираться. |
|
|
|
|
BRE |
20.11.2010, 11:52
Сообщение
#4
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44
|
Объект QSqlTableModel нужно создавать после открытия базы данных, но создавать его нужно на куче.
|
|
|
|
|
Terep |
20.11.2010, 12:07
Сообщение
#5
|
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 20.11.2010 Пользователь №: 2204 Спасибо сказали: 0 раз(а) Репутация: 0
|
Ну вот, к базе подключились, с таблицей проблем нет, есть одна с отображением: ![]() И, простите, что значит "на куче"? upd то есть таблица не отобразилась. она точно не пустая. upd про кучу понял |
|
|
|
|
BRE |
20.11.2010, 12:12
Сообщение
#6
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44
|
Попробуй вначале настраивать модель (setTable, select), а потом указать ее view. Хотя модель во время select должна сама уведомить view.
Точно таблица не пустая? Сообщение отредактировал BRE - 20.11.2010, 12:14 |
|
|
|
|
Terep |
20.11.2010, 12:21
Сообщение
#7
|
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 20.11.2010 Пользователь №: 2204 Спасибо сказали: 0 раз(а) Репутация: 0
|
К сожалению, уже много раз пробовал и так и сяк.
В данный момент : результат тот же, то есть заголовки дергает нормально, а саму таблицу нет. upd возможно, это все потому что: Цитата QSqlDatabasePrivate::removeDatabase: connection 'qt_sql_default_connection' is still in use, all queries will cease to work. И из-за этого она просто не может селект * выполнить. Хотя в деструкторе убиваю соединение: Может, еще и модель надо разрушать.. |
|
|
|
|
Terep |
20.11.2010, 13:00
Сообщение
#8
|
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 20.11.2010 Пользователь №: 2204 Спасибо сказали: 0 раз(а) Репутация: 0
|
В данный момент:
Таблица по прежнему не выводится В соседней теме прочитал, что варнинг по поводу незакрытого соединения при выходе можно игнорить. В чем проблема так и не могу понять... |
|
|
|
|
Terep |
20.11.2010, 16:15
Сообщение
#9
|
|
Новичок Группа: Новичок Сообщений: 9 Регистрация: 20.11.2010 Пользователь №: 2204 Спасибо сказали: 0 раз(а) Репутация: 0
|
И еще, может кто подскажет почему вот от этого:
приложению хорошо А при таком раскладе: падает на
|
|
|
|
|
Litkevich Yuriy |
20.11.2010, 16:21
Сообщение
#10
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(Terep @ 20.11.2010, 14:21) Link Хотя в деструкторе убиваю соединение: ты не правильно удаляешь соединение, смотри описание соответствующего метода.Но проблема отображения не в этом. В принципе можно вообще не удалять соединение. Terep, открой свою таблицу в демке - sqlbrowser будет ли работать? |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 7.1.2026, 7:38 |