QTableView:如何设置搜索列
我使用 QTableView 和 QAbstractTableModel 的子类作为其模型。 我看到(默认情况下)当用户键入某些内容时,QTableView 开始搜索第一列中键入的文本并将视图滚动到匹配元素。这是我想要的,但不在第一栏中。 我找不到一种方法来告诉(代码)QTableView 或 QAbstractTableModel 哪个是“搜索列”。 有什么想法吗?
谢谢
I'm using a QTableView and a subclass of QAbstractTableModel as its model.
I saw that (by default) when the user types something the QTableView start searching the typed text in the first column and scroll the view to the matching element. This is what I wanted but not in the first column.
I cannot find a way to tell (code) QTableView or QAbstractTableModel which is the "search column".
Any idea?
Thank you
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
QTableView通常在当前具有焦点的列中搜索。只需单击要搜索的列中的单元格并开始输入即可。
[编辑:]
关于您的评论:您可以使用将任何单元格设置为活动单元格
这也将选择该单元格。如果您不希望这样做,您可以执行
如果您有插槽连接到表视图的selectionModel()的当前[Row|Column]Changed或selectionChanged信号,您可能需要执行以下操作,具体取决于您的代码:
QTableView usually searches in the column that currently has focus. Just click into a cell in the column you want to search at and start typing.
[Edit:]
Regarding your comment: You can set any cell to the active cell using
This will also select the cell. If you don't want that, you can do
If you have slots connected to your current[Row|Column]Changed or selectionChanged signals of the table view's selectionModel(), you might wanna do the following, dependent on your code:
我找到了这个解决方案:
但是如果我使用 QTreeView 而不是 QTableView 它不起作用:(
I found this solution:
But if I use a QTreeView instead of a QTableView it doesn't work :(