Редакция 51 |
К новейшей редакции |
Авторство |
Сравнить с предыдущей |
Последнее изменение |
Открыть журнал
| Скачать
| RSS
#include "mymodel.h"
MyModel::MyModel(QObject *parent) :
QSqlTableModel(parent)
{
setEditStrategy(QSqlTableModel::OnManualSubmit);
}
Qt::ItemFlags MyModel::flags(
const QModelIndex &index) const {
Qt::ItemFlags flags = QSqlTableModel::flags(index);
if (index.column() != 3)
flags |= Qt::ItemIsEditable;
//if (index.column() == 4)
// flags |= Qt::ItemIsUserCheckable;
else flags &= ~Qt::ItemIsEditable; // çàïðåùàåì ðåäàêòèðîâàíèå òðåòüåãî ñòîëáöà
return flags;
}
bool MyModel::setData(const QModelIndex &index, const QVariant &value, int role) {
bool lResult = false;
lResult = QSqlTableModel::setData(index, value, role);
if (lResult) {
QSqlRecord rec = record(index.row());
rec.setValue(index.column(), value);
rec.setGenerated(index.column(), true);
lResult = updateRowInTable(index.row(), rec);
}
return lResult;
}