c++ - 如何更改 QTreeView 小部件中的图标
解决方案
Qt 中有QTreeView::drawBranches函数。使用此功能,您可以使用指定的在树项目的左侧绘制任意图标QPainter
:
void QTreeView::drawBranches(QPainter *painter, const QRect &rect,
const QModelIndex &index) const
另一种选择是自定义样式表,如文档中所述。使用这些样式表,您可以轻松地将所需的图像添加为图标。
上述文档链接提供了此类自定义的示例:
QTreeView::branch:has-siblings:!adjoins-item {
border-image: url(vline.png) 0;
}
QTreeView::branch:has-siblings:adjoins-item {
border-image: url(branch-more.png) 0;
}
QTreeView::branch:!has-children:!has-siblings:adjoins-item {
border-image: url(branch-end.png) 0;
}
QTreeView::branch:has-children:!has-siblings:closed,
QTreeView::branch:closed:has-children:has-siblings {
border-image: none;
image: url(branch-closed.png);
}
QTreeView::branch:open:has-children:!has-siblings,
QTreeView::branch:open:has-children:has-siblings {
border-image: none;
image: url(branch-open.png);
}
结果,他们得到以下结果:
推荐阅读
- webpacker - Bootstrap JS 函数未在 Rails 6/Webpacker 中加载
- node.js - aws放大lambda函数ReactDOMServer.renderToString错误
- haskell - 在 Haskell 中访问 Graph 数据类型的成员
- html - 如何在我自己的代码片段中使用“div*3”之类的快捷方式?
- python - 如何询问玩家是否想重玩我的 Python3 终端号码猜谜游戏?
- python - 具有相同名称的复选框数组,未选中的复选框在 python 和烧瓶中返回空值
- python - Beautifulsoup 不会在桌子上刮头
- javascript - 当我切换到移动视图时,我的按钮发生了什么?
- javascript - 如何更新此递归函数以检查对象的属性名称?
- git - git pull 真的和 git fetch+merge 一样吗?