Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
AD |
20.5.2009, 15:49
Сообщение
#1
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Итак есть модель-представление. QAbstractTableModel - модель, QTableView - представление. Табличка заполняется при открытии определенных файлов (.fpl). Как сделать так, чтобы происходило обновление представления при загрузке другого файла? Обновление модели есть, делаю новое setModel(<model>), но это не помогает. Как обновить табличку?
Т.е. если загрузил файл, где количество строк больше ранее загруженного! Как заставить представление это отобразить корректно? В данный момент оно упорно отображает пред. кол-во строк. Список, из которого идет формирование таблички, обновляется корректно! Сообщение отредактировал AD - 20.5.2009, 15:52 |
|
|
|
|
Litkevich Yuriy |
20.5.2009, 20:02
Сообщение
#2
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(AD @ 20.5.2009, 19:49) Link Как обновить табличку? я так понимаю модель самописанная. Ты при не модель новую устанавливай для представления, а в модели сделай что типа: setFile()в этом методе вызывай reset() |
|
|
|
|
AD |
20.5.2009, 21:23
Сообщение
#3
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Цитата(Litkevich Yuriy @ 20.5.2009, 21:02) Link я так понимаю модель самописанная. Ты при не модель новую устанавливай для представления, а в модели сделай что типа: setFile() в этом методе вызывай reset() модель самописанная, основанная на указанной. Юра, а можно по-русски, ничего не понял из твоей фразы. |
|
|
|
|
Litkevich Yuriy |
20.5.2009, 21:40
Сообщение
#4
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(AD @ 20.5.2009, 19:49) Link Обновление модели есть, делаю новое setModel(<model>), но это не помогает. ну я тут тоже по догадке.Что значит есть обновление? Как ты меняешь файл? |
|
|
|
|
AD |
20.5.2009, 22:07
Сообщение
#5
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Цитата(Litkevich Yuriy @ 20.5.2009, 22:40) Link ну я тут тоже по догадке. Что значит есть обновление? Как ты меняешь файл? Заменяю один файл на другой! Содержимое файла не изменяется. Файлы только читаю! Т.е. список, который хранит данные из файла, изменяется вовремя. |
|
|
|
|
Litkevich Yuriy |
20.5.2009, 22:12
Сообщение
#6
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(AD @ 20.5.2009, 19:49) Link делаю новое setModel(<model>), какое отношение это имеет кЦитата(AD @ 21.5.2009, 2:07) Link Заменяю один файл на другой!
|
|
|
|
|
AD |
20.5.2009, 22:49
Сообщение
#7
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Цитата(Litkevich Yuriy @ 20.5.2009, 23:12) Link Цитата(AD @ 20.5.2009, 19:49) Link делаю новое setModel(<model>), какое отношение это имеет кЦитата(AD @ 21.5.2009, 2:07) Link Заменяю один файл на другой! За счет этого происходит обновление списка. а как еще? Сообщение отредактировал AD - 20.5.2009, 22:50 |
|
|
|
|
Litkevich Yuriy |
20.5.2009, 23:29
Сообщение
#8
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
ни чего не понял.
setModel(<model>) ты для чего вызываешь, для представления? Если да, то зачем? Ведь у тебя уже установлена модель. Доработай модель так, что бы у нее был метод setFile(...). по аналогии с QSqlQueryModel (в неё есть метод setQuery() ) |
|
|
|
|
Sokoloff |
21.5.2009, 10:42
Сообщение
#9
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 237 Регистрация: 1.4.2009 Из: Москва Пользователь №: 654 Спасибо сказали: 50 раз(а) Репутация: 11
|
Насколько я понял, в функции открытия файла ты читаешь его содержимое и заполняешь какие-то внутренние структуры с данными. Вот сразу после того, как ты загрузил все из файла, вызови метод reset для своей модели( Link ).
|
|
|
|
|
AD |
21.5.2009, 12:12
Сообщение
#10
|
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: 17
|
Sokoloff, спасибо!
|
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 10.12.2025, 9:26 |