Russian Qt Forum

Qt => Model-View (MV) => Тема начата: unkeep от Март 29, 2013, 13:19



Название: [РЕШЕНО]Вставка строки в модель :QAbstractItemModel
Отправлено: unkeep от Март 29, 2013, 13:19
как лучше всего вставлять? для удаления использую метод  DeletRow, для считывания метод Data. А для вставки? там есть методы  для вставки пустых строк (IsertRow/InsertRows ), но моя таблица в БД не разрешает вставлять пустые записи.
Можно конечно ставить
Код
C++ (Qt)
SetManualSubmit(true)
перед вставкой, вставлять пустую строку, потом заполнять эту строку, а потом делать Submit... Но хотелось бы по проще если возможно.

и ещё не по теме немного. может встречал кто примеры переопределённых методов для сортировки QSortFilterProxyModel? Мне надо для сортировки по столбцу пользовательского типа(прокси модель не знает как сравнивать элементы)


Название: Re: Вставка строки в модель :QAbstractItemModel
Отправлено: mutineer от Март 29, 2013, 13:26
и ещё не по теме немного. может встречал кто примеры переопределённых методов для сортировки QSortFilterProxyModel? Мне надо для сортировки по столбцу пользовательского типа(прокси модель не знает как сравнивать элементы)

Переопределяешь lessThan, в документации есть пример


Название: Re: Вставка строки в модель :QAbstractItemModel
Отправлено: dio от Март 29, 2013, 23:05
В методах insertRows, setData, removeRows ведите лог изменений данных, по завершению транзакции - формируете sql скрипт для наката изменений в бд и выполняете его.