项目被选中但未突出显示

Item is selected but isn't highlighted

我使用 Qt/C++,我有一个 QListView 可以在屏幕上显示图标。 我将 QListView::iconMode 设置为将其显示为图标视图。但我看不到它被选中(但它被选中)它没有突出显示。但是它适用于列表模式。 我有这个。

listView->setSelectionMode(QListView::SingleSelection);
listView->setSelectionBehavior(QListView::SelectRows);

listView->setFlow(QListView::LeftToRight);
listView->setViewMode(QListView::IconMode);
listView->setWrapping(true);

你能帮帮我吗?

Documentation of selection rectangle:

This property holds if the selection rectangle should be visible.

If this property is true then the selection rectangle is visible; otherwise it will be hidden.

Note: The selection rectangle will only be visible if the selection mode is in a mode where more than one item can be selected; i.e., it will not draw a selection rectangle if the selection mode is QAbstractItemView::SingleSelection.

By default, this property is false.

你必须尝试:

  • 手动将 属性 设置为 true 并查看它是否改变
  • 放弃单选模式。是强制性的吗? QAbstractItemView::ContiguousSelection 符合您的需求吗?

我是考古学家:D

可行的解决方案:

listView->setStyleSheet(" QListView::item:selected { border: 2px solid red; }");

您可以使用自己的边框。