lau*_*ent 13 qt selection qlistview
我仍然在努力使用QListView,我试图在视图中选择一个特定的行,我无法弄清楚如何做到这一点.
我在StackOverflow上发现了一个类似的问题,它建议使用createIndex()模型的方法,但是这个方法是受保护的(可能它曾经是公共的但不再是),所以这对我不起作用.有什么建议吗?
Liz*_*Liz 20
你可以通过调用得到任何东西的索引
QModelIndex indexOfTheCellIWant = model->index(row, column, parentIndex);
Run Code Online (Sandbox Code Playgroud)
然后你可以打电话给setCurrentIndex(indexOfTheCellIWant)布鲁诺在他的回答中说.
如果model只包含一个标准的项目列表而不是树形结构,那么它就更容易了.因为我们可以假设该项是根项 - 没有父项.
QModelIndex indexOfTheCellIWant = model->index(row, column);
Run Code Online (Sandbox Code Playgroud)
使用树结构它有点棘手,因为我们不能只指定行和列,我们需要针对父类指定它们.如果您需要了解这部分,请告诉我,我会解释更多.
还有一件事需要注意.选择基于单元格,而不是真正的行.因此,如果您想确保当用户选择一个单元格(或您通过代码完成)选择整行时,您可以通过在其自身上设置"selectionBehavior"来实现.
list->setSelectionBehavior(QAbstractItemView::SelectRows);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15790 次 |
| 最近记录: |