Уведомления

Группа в Telegram: @pythonsu

#1 Июль 29, 2011 22:18:27

Артур12121
От:
Зарегистрирован: 2011-07-24
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

[PyQt4] Обновление переменной

Здравствуйте.

Есть главное окно (на нём происходит вывод из БД), при нажатии на “добавить” открывается новое окно с формами для записей, при нажатии на “добавить” запись добавляется в БД, но как сделать что бы в главном окне запись обновилась информация без закрытия главного окна?



Офлайн

#2 Июль 29, 2011 23:45:23

truporez
От:
Зарегистрирован: 2009-05-08
Сообщения: 266
Репутация: +  6  -
Профиль   Адрес электронной почты  

[PyQt4] Обновление переменной

Для моделей есть методы beginInsertRows и endInsertRows



Офлайн

#3 Июль 30, 2011 10:39:18

Артур12121
От:
Зарегистрирован: 2011-07-24
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

[PyQt4] Обновление переменной

пример можно? а то сам никак в не могу в документации разобраться (из-за незнания английского)



Офлайн

#4 Июль 30, 2011 11:44:57

truporez
От:
Зарегистрирован: 2009-05-08
Сообщения: 266
Репутация: +  6  -
Профиль   Адрес электронной почты  

[PyQt4] Обновление переменной

Вот к примеру.. кхм пример: PyQt4/examples/itemviews/fetchmore.pyw
Английский нужен, хотя-бы чтение, без вариантов, чем раньше займетесь - тем лучше.



Офлайн

#5 Июль 30, 2011 17:31:26

Артур12121
От:
Зарегистрирован: 2011-07-24
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

[PyQt4] Обновление переменной

Вот посмотрел пример и изучив его задался вопросом, нужно использовать beginInsertRows, данная функция находится в функции fetchMore но эту функцию не вызывают, объясните пожалуйста как она запускается без вызова функции fetchMore



Офлайн

#6 Июль 30, 2011 18:04:06

truporez
От:
Зарегистрирован: 2009-05-08
Сообщения: 266
Репутация: +  6  -
Профиль   Адрес электронной почты  

[PyQt4] Обновление переменной

В документации: если canFetchMore возвращает True, то сам вид вызовет fetchMore вашей модели.
Смотрите здесь



Офлайн

#7 Июль 30, 2011 20:26:17

villager
От:
Зарегистрирован: 2008-11-04
Сообщения: 111
Репутация: +  0  -
Профиль   Отправить e-mail  

[PyQt4] Обновление переменной

скорее всего в главном окне грид
какой? не ясно
поэтому и подсказать Вам сложно

запись в БД добавляется как? вручную строится sql (insert)?
если да:
если используется QTableView : сделать model().reset()
если QTableWidget: вручную добавить строку в нужное место



Офлайн

#8 Июль 30, 2011 22:51:51

Артур12121
От:
Зарегистрирован: 2011-07-24
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

[PyQt4] Обновление переменной

Запись происходит через sql.
Используется QTableView.



Офлайн

#9 Июль 31, 2011 10:54:48

villager
От:
Зарегистрирован: 2008-11-04
Сообщения: 111
Репутация: +  0  -
Профиль   Отправить e-mail  

[PyQt4] Обновление переменной

Артур12121
Запись происходит через sql.
Используется QTableView.
тогда reset модели:
QTableView.model().reset()

сейчас прочитал в доках - используй beginResetModel() and endResetModel() вмеcто reset()



Офлайн

#10 Авг. 4, 2011 19:50:07

Артур12121
От:
Зарегистрирован: 2011-07-24
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

[PyQt4] Обновление переменной

Ошибка AttributeError: ‘module’ object has no attribute ‘beginInsertRows’



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version