QTreeWidget развернуть знак - PullRequest
       7

QTreeWidget развернуть знак

6 голосов
/ 14 апреля 2010

Как сделать расширяемый знак в QTreeWidget всегда видимым, даже если у элемента есть какие-либо подэлементы? А как нарисовать что-то еще вместо знака по умолчанию?

Спасибо заранее, Serge

Ответы [ 2 ]

9 голосов
/ 14 апреля 2010

QTreeWidgetItems имеет свойство childIndicatorPolicy . Допустимые значения:

  • QTreeWidgetItem :: ShowIndicator
  • QTreeWidgetItem :: DontShowIndicator
  • QTreeWidgetItem :: DontShowIndicatorWhenChildless

Вы хотите первый.

theItem.setChildIndicatorPolicy(QTreeWidgetItem.ShowIndicator)
8 голосов
/ 15 апреля 2010

Ответы на мою вторую часть вопроса для других.

Я искал функции рисования в QTreeView и обнаружил следующее:

void QTreeView::drawBranches ( QPainter * painter, const QRect & rect, const QModelIndex & index ) 

С помощью этой функции вы можете рисовать что угодно на левой стороне каждого элемента.

И еще один хороший выбор для этого - используйте таблицы стилей для QTreeView:

http://qt.nokia.com/doc/4.6/stylesheet-examples.html#customizing-qtreeview

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...