Qt 如何使用组合框文本仅显示QSqlTableModel中的特定行?
我在qtC++中使用<代码> qsqtLabLimoDele/Cuff>,我只想显示包含在<代码> qCuMBOxbox < />代码中的文本行。例如,当我单击组合框中的“John”项时,表视图应该只显示以“John”开头的名称。我不知道怎么做。您需要的课程是: 不要直接显示QSqlTableModel,而是在模型和视图之间放置QSortFilterProxy模型:Qt 如何使用组合框文本仅显示QSqlTableModel中的特定行?,qt,qcombobox,qsqltablemodel,Qt,Qcombobox,Qsqltablemodel,我在qtC++中使用 qsqtLabLimoDele/Cuff>,我只想显示包含在 qCuMBOxbox < />代码中的文本行。例如,当我单击组合框中的“John”项时,表视图应该只显示以“John”开头的名称。我不知道怎么做。您需要的课程是: 不要直接显示QSqlTableModel,而是在模型和视图之间放置QSortFilterProxy模型: QSortFilterProxyModel* proxyModel = new QSortFilterProxyModel( this ); p
QSortFilterProxyModel* proxyModel = new QSortFilterProxyModel( this );
proxyModel->setSourceModel( yourQSqlTableModel );
yourView->setModel( proxyModel );
然后,您可以对该模型进行排序或筛选(检查顶部链接中的
排序和筛选部分)。顺便说一句,如果您的筛选类型可以通过SQL轻松提供,您可以使用QSqlTableModel的setFilter()
方法。非常感谢您。现在我将查找排序和筛选