QTreeView、QTreeWidget控件样式
QTreeWidget 是 QTreeView 的子类。
- 常用子控件

- 常用伪状态


QSS示例1 - item、section
-
新建一个 QMainWindow 窗口,放入 QTreeWidget 和 QTreeView 两个控件:

-
项的设置
/*头部样式*/ QTreeView QHeaderView::section{ background-color: black; color: white; border: 1px solid red; border-radius: 8px; } QTreeView { font: normal bold 15px "Microsoft YaHei"; color: white; background-color: blue; /*交替变换颜色*/ alternate-background-color: gray; /*去除选中的虚线框*/ outline: none; } /* 每一项的背景 */ QTreeView::item{ border: 1px solid red; } /* 光标移动到每一项 */ QTreeView::item:hover{ background-color: black; } /* 项被选中 */ QTreeView::item:selected{ background-color: red; } /*有焦点时项被选中*/ QTreeView::item:selected:active{ background-color: yellow; } /*失去焦点的时候,项被选中*/ QTreeView::item:selected:!active{ background-color: green; }


QSS示例2 - branch、伪状态
-
branch 如下所示。
/*分支子控件*/ QTreeView::branch { background-color: gray; }
-
branch:adjoins-item (分支与item相邻)如下所示。
/*分支子控件*/ QTreeView::branch { background-color: gray; } QTreeView::branch:adjoins-item{ background-color: blue; }
-
branch:!adjoins-item (分支与item不相邻)如下所示。
/*分支子控件*/ QTreeView::branch { background-color: gray; } QTreeView::branch:adjoins-item{ background-color: blue; } QTreeView::branch:!adjoins-item{ background-color: red; }
-
branch:has-siblings (有兄弟) 如所示。
/*分支子控件*/ QTreeView::branch { background-color: gray; } QTreeView::branch:has-siblings { background-color: blue; }
-
branch:has-children (有孩子)如下所示。
/*分支子控件*/ QTreeView::branch { background-color: gray; } QTreeView::branch:has-children { background-color: black; }
-
组合使用,如下所示。
QTreeView::branch { background-color: white; } /* 有下一个兄弟节点,紧挨着item的那一格*/ QTreeView::branch:has-siblings:adjoins-item { border-image: url(:/images/images/branch-more.png), 0; } /*有下一个兄弟节点,未挨着item的那一格*/ QTreeView::branch:has-siblings:!adjoins-item { border-image: url(:/images/images/vline.png), 0; } /*无孩子、无下一个兄弟节点,挨着item的那一格*/ QTreeView::branch:!has-children:!has-siblings:adjoins-item { border-image: url(:/images/images/branch-end.png), 0; } /*折叠状态,有孩子*/ QTreeView::branch:closed:has-children:!has-siblings, QTreeView::branch:closed:has-children:has-siblings { border-image: none; /*去掉原有的属性*/ image: url(:/images/images/right-arrow.png); } /*打开状态,有孩子*/ QTreeView::branch:open:has-children:!has-siblings, QTreeView::branch:open:has-children:has-siblings { border-image: none; image: url(:/images/images/down-arrow.png); }
715

被折叠的 条评论
为什么被折叠?



