【发布时间】:2015-01-15 01:22:56
【问题描述】:
在实现QSortFilterProxyModel(与QTableView 一起使用)时,我通过在其中定义一些自定义逻辑(关于如何过滤项目)覆盖了代理的filterAcceptsRow() 方法。现在看来,覆盖代理的“默认”filterAcceptsRow() 与围绕.setFilterRegExp() 构建的内置代理功能冲突
mySearchField=QLineEdit()
QObject.connect(mySearchField, SIGNAL("textChanged(QString)"), myProxyModel.setFilterRegExp)
在输入mySearchField 时,我确实看到代理的filterAcceptsRow() 不断被调用。但是由于我用自定义逻辑覆盖了它的filterAcceptsRow() 方法,因此不会对输入到 lineedit 的文本进行过滤。
问题:是否可以同时保留这两个功能:使用代理的内置 .setFilterRegExp() 和自定义 filterAcceptsRow() 方法的简单性?
【问题讨论】: