ある種のアドレス帳をプログラミングしています。アプリケーションの左側に、連絡先の名前を表示する QListView があります。アプリケーションの右側に、連絡先の情報 (名前、住所、電話番号など) を入力するフォームがあります。連絡先のデータを QSqlTableModel に保存しています。QListView を使用して、QSqlTableModel の 1 つの列を表示します。
私の質問は次のとおりです: QSqlTableModel に最後に挿入された連絡先に対応する QListView のアイテムを自動的に選択するにはどうすればよいですか?
これは私が自分のモデルをセットアップする方法です:
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName("datenbank.db");
model = new QSqlTableModel(this, db);
model->setTable("demodaten");
model->setEditStrategy(QSqlTableModel::OnManualSubmit);
model->setSort(0, Qt::AscendingOrder);
model->select();
view->setModel(model);
view->setModelColumn(0);
これは、モデルに新しいレコードを追加する方法です。
QSqlRecord record = model->record();
for(int i = 0; i<record.count(); i++){
record.setValue(i, "");
}
record.setValue("codenummer", p.getCodeNummer());
record.setValue("vorname", p.getVorname());
record.setValue("nachname", p.getNachname());
record.setValue("geburtsdatum", p.getGeburtsdatum());
model->insertRecord(-1, record);
model->submitAll();