样式表
treeView.setStyleSheet("QTreeView { background-color: lightblue; color: white; }"
"QTreeView::item { border-bottom: 1px solid black; }"
"QTreeView::item:selected { background-color: blue; color: white; }");
-
在 Qt 的样式表中,双冒号 :: 用于区分伪状态(pseudo-states)和伪元素(pseudo-elements)。在 QTreeView 中,QTreeView::item:selected 是一个伪状态,用于表示被选中的项的样式。
- 伪状态(pseudo-states)以单冒号 : 开头,用于表示控件的不同状态,例如选中、悬停、禁用等。在样式表中,您可以根据控件的不同状态来设置不同的样式。
- 伪元素(pseudo-elements)以双冒号 :: 开头,用于表示控件的特定部分或元素,例如滚动条、边框等。在样式表中,您可以通过伪元素来定制控件的特定部分的样式。
- 因此,在 QTreeView::item:selected 中,item:selected 表示被选中的项,而 :: 表示这是一个伪状态。这样的语法设计使得样式表更加灵活,可以根据控件的状态和特定部分来定制样式。