Hello! There's nice qt docs example here: http://doc.qt.nokia.com/4.7-snapshot/sql-sqlwidgetmapper.html demonstrating QSqlRelationalTable, QDataWidgetMapper and QComboBox.
They setup model: ... query.exec("create table person (id int primary key, " "name varchar(20), address varchar(200), typeid int)"); ... query.exec("create table addresstype (id int, description varchar(20))"); ... model = new QSqlRelationalTableModel(this); model->setTable("person"); model->setEditStrategy(QSqlTableModel::OnManualSubmit); typeIndex = model->fieldIndex("typeid"); model->setRelation(typeIndex, QSqlRelation("addresstype", "id", "description")); model->select(); and then setup mapper: QSqlTableModel *relModel = model->relationModel(typeIndex); typeComboBox->setModel(relModel); typeComboBox->setModelColumn(relModel->fieldIndex("description")); mapper = new QDataWidgetMapper(this); mapper->setModel(model); mapper->setItemDelegate(new QSqlRelationalDelegate(this)); mapper->addMapping(nameEdit, model->fieldIndex("name")); mapper->addMapping(addressEdit, model->fieldIndex("address")); mapper->addMapping(typeComboBox, typeIndex); Here's the question: is there a way to filter typeComboBox items while editing a record? Say, on button click. User clicks button and theres types with some property only in typeComboBox. I've tried two things: 1) calling setFilter on relModel. This somehow "decouples" combobox from mapper and no further updates from typeComboBox pass to model. 2) setting typeComboBox::setModel() to relModel wrapped in QSortFilterProxyModel. This causes invalid values to assigned. Say, I picked second item in filtered list and mapper assigned second item in not filtered list to model. -- A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing in e-mail? _______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest