Артур12121
Июль 29, 2011 22:18:27
Здравствуйте.
Есть главное окно (на нём происходит вывод из БД), при нажатии на “добавить” открывается новое окно с формами для записей, при нажатии на “добавить” запись добавляется в БД, но как сделать что бы в главном окне запись обновилась информация без закрытия главного окна?
truporez
Июль 29, 2011 23:45:23
Для моделей есть методы beginInsertRows и endInsertRows
Артур12121
Июль 30, 2011 10:39:18
пример можно? а то сам никак в не могу в документации разобраться (из-за незнания английского)
truporez
Июль 30, 2011 11:44:57
Вот к примеру.. кхм пример: PyQt4/examples/itemviews/fetchmore.pyw
Английский нужен, хотя-бы чтение, без вариантов, чем раньше займетесь - тем лучше.
Артур12121
Июль 30, 2011 17:31:26
Вот посмотрел пример и изучив его задался вопросом, нужно использовать beginInsertRows, данная функция находится в функции fetchMore но эту функцию не вызывают, объясните пожалуйста как она запускается без вызова функции fetchMore
truporez
Июль 30, 2011 18:04:06
В документации: если canFetchMore возвращает True, то сам вид вызовет fetchMore вашей модели.
Смотрите здесь
villager
Июль 30, 2011 20:26:17
скорее всего в главном окне грид
какой? не ясно
поэтому и подсказать Вам сложно
запись в БД добавляется как? вручную строится sql (insert)?
если да:
если используется QTableView : сделать model().reset()
если QTableWidget: вручную добавить строку в нужное место
Артур12121
Июль 30, 2011 22:51:51
Запись происходит через sql.
Используется QTableView.
villager
Июль 31, 2011 10:54:48
Артур12121
Запись происходит через sql.
Используется QTableView.
тогда reset модели:
QTableView.model().reset()
сейчас прочитал в доках - используй beginResetModel() and endResetModel() вмеcто reset()
Артур12121
Авг. 4, 2011 19:50:07
Ошибка AttributeError: ‘module’ object has no attribute ‘beginInsertRows’