Название: вставка новой записи Отправлено: crossly от Апрель 01, 2008, 15:48 подскажите плиз... как грамотно переопределить insertRow у QSqlQueryModel для вставки новой записи...
Название: Re: вставка новой записи Отправлено: Mikhail от Апрель 01, 2008, 19:25 подскажите плиз... как грамотно переопределить insertRow у QSqlQueryModel для вставки новой записи... Ну для начала у QSqlQueryModel нет функции insertRow. А insertRows не предназначена для вставки новой записи. Как работать с моделью написано в ассистенте: QSqlQueryModel *model = new QSqlQueryModel; model->setQuery("SELECT name, salary FROM employee"); model->setHeaderData(0, Qt::Horizontal, tr("Name")); model->setHeaderData(1, Qt::Horizontal, tr("Salary")); QTableView *view = new QTableView; view->setModel(model); view->show(); Работать надо через SQL запросы, типа model->setQuery("insert into employee( name, salary ) values ('Petrov', 'sss')"); Название: Re: вставка новой записи Отправлено: crossly от Апрель 02, 2008, 13:47 подскажите плиз... как грамотно переопределить insertRow у QSqlQueryModel для вставки новой записи... Ну для начала у QSqlQueryModel нет функции insertRow. А insertRows не предназначена для вставки новой записи. Как работать с моделью написано в ассистенте: QSqlQueryModel *model = new QSqlQueryModel; model->setQuery("SELECT name, salary FROM employee"); model->setHeaderData(0, Qt::Horizontal, tr("Name")); model->setHeaderData(1, Qt::Horizontal, tr("Salary")); QTableView *view = new QTableView; view->setModel(model); view->show(); Работать надо через SQL запросы, типа model->setQuery("insert into employee( name, salary ) values ('Petrov', 'sss')"); я же и спрашиваю как переобпределить... у меня получилось следующее Код: bool Model::insertRows(int row,int count, const QModelIndex & parent ) Название: Re: вставка новой записи Отправлено: ритт от Апрель 02, 2008, 16:07 "левая" строка добавляется, т.к. ты сам её и добавляешь (beginInsertRows/endInsertRows)
размеры столбцов НЕ хранятся в модели - это задача вьюхи Название: Re: вставка новой записи Отправлено: crossly от Апрель 02, 2008, 16:55 "левая" строка добавляется, т.к. ты сам её и добавляешь (beginInsertRows/endInsertRows) я по этому и спрашиваю как правильно сделать.... :)размеры столбцов НЕ хранятся в модели - это задача вьюхи |