消除Qt QListView项目上的点状轮廓

14

我正在尝试使用样式表来移除此 QListView::item 中文本的虚线边框:

QListView with dotted outline shown on selected item

我已经尝试了多种方法,如在 QListViewQListView::itemQListView::item::text 上使用 border: 0show-decoration-selected: 0,但都没有效果。

我正在使用 PyQt,但我相信样式表规则与 C++ 库中的规则是相同的。

3个回答

23

经过进一步测试,我发现以下样式表有效:

QListView {
    outline: 0;
}

4

在样式表中设置outline: 0;对我来说无效(再也不行了?)。 我能找到的唯一解决方案是将ListView的FocusPolicy设置为Qt :: NoFocus ,这显然有明显的缺点。


1
outline:0QListWidget中无效的可能原因之一是如果您将其设置在QListWidget :: item上而不是QListWidget本身上。 不确定这是否也适用于QListView情况。 - djvg

2

将边框设置为无似乎对我有用。

QListView::item { 
    border: none;
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接