簡體   English   中英

如何更改 QTreeView 小部件中的圖標

[英]How can i change icons in QTreeView widget

如何更改這些圖標? 我在 treeView 設置中找不到改變它的道具。

在此處輸入圖像描述

Qt 中有QTreeView::drawBranches function。 使用此 function 您可以使用指定的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);
}

結果,他們得到以下結果:

在此處輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM