我QSqlTableModel
在 Qt C++ 中使用,我想只显示包含QComboBox
. 例如,当我单击组合框中的“John”项时,表格视图应该只显示以“John”开头的名称。我不知道该怎么做。
问问题
707 次
2 回答
2
您需要的类是QSortFilterProxyModel:
与其直接显示 QSqlTableModel,不如在模型和视图之间放置一个 QSortFilterProxyModel:
QSortFilterProxyModel* proxyModel = new QSortFilterProxyModel( this );
proxyModel->setSourceModel( yourQSqlTableModel );
yourView->setModel( proxyModel );
然后,您可以对该模型进行排序或过滤(检查顶部链接中的Sorting
和部分)。Filtering
于 2013-07-26T10:57:19.710 回答
1
顺便说一句,如果您的过滤类型可以通过 SQL 轻松提供,您可以使用 QSqlTableModel 的setFilter()
方法。
于 2014-07-22T08:36:27.620 回答