Название: QtreeView+QAbstractItemDelegate и отрисовка кнопок expand/collapse Отправлено: MaxoBik от Апрель 10, 2015, 18:52 Доброго времени суток, есть такой вопрос - реализовываю свой собственный QAbstractItemDelegate для QtreeView, в методе paint делегата отрисовываю внешний вид, но вот вопрос - как нарисовать expand/collapse иконки, т.е. сейчас вот так:
(http://i.imgur.com/JlqrBit.png?1) а надо чтобы были иконки: (http://i.imgur.com/MoGXwWS.png?1) мне их необходима самостоятельно отрисовывать в методе paint? И также менять их состояния при событии collapse и expand элемента дерева, или возможно можно как то проще поступить? Буду признателен за любую помощь в этом вопросе. Название: Re: QtreeView+QAbstractItemDelegate и отрисовка кнопок expand/collapse Отправлено: Nidxogg от Апрель 11, 2015, 08:04 Qt style sheet не пробовали?
Название: Re: QtreeView+QAbstractItemDelegate и отрисовка кнопок expand/collapse Отправлено: MaxoBik от Апрель 11, 2015, 10:32 Qt style sheet не пробовали? Да, пробывал вместо самостоятельного paint-а использовать Qt style sheet CSS, но как закрасить первые row полностью?Т.е. к примеру : Код: this->setStyleSheet("QTreeView::item { background-color: yellow; }") окрашивает не строку полностью: (http://i.imgur.com/HLnGeJz.png?1) может есть какой-то правильные селекторы для этого? Название: Re: QtreeView+QAbstractItemDelegate и отрисовка кнопок expand/collapse Отправлено: Bepec от Апрель 11, 2015, 14:46 Правильно вы говорите неправильные селекторы.
Цитировать The branches of the tree view can be styled using the ::branch subcontrol. The ::branch Sub-control supports the :open, :closed, :has-sibling and :has-children pseudo states. Название: Re: QtreeView+QAbstractItemDelegate и отрисовка кнопок expand/collapse Отправлено: MaxoBik от Апрель 11, 2015, 18:11 Правильно вы говорите неправильные селекторы. Цитировать The branches of the tree view can be styled using the ::branch subcontrol. The ::branch Sub-control supports the :open, :closed, :has-sibling and :has-children pseudo states. Спасибо за совет, но я уже читал про селектор ::branch, возможно я не четко описал вопрос, вот что я пытаюсь сделать: мне нужно выделить узлы что не имеют родителей, задать им background цвет и border, как здесь: (http://i.imgur.com/JlqrBit.png?1) но к этому необходимо показывать еще expand/collapse иконки. Со стилями во-первых я не нашел селекторов, которые выделяли бы только узлы без предков, во-вторых ::branch при задании background-color удаляет иконки expand/collapse, поэтому придется еще и описывать правила стиля и для них, но опять же нет селекторов(или я их не нашел) для узлов у которых нет родителей, тем более для ::branch. Название: Re: QtreeView+QAbstractItemDelegate и отрисовка кнопок expand/collapse Отправлено: Bepec от Апрель 11, 2015, 18:37 Ничерта не понял, формулируйте свои мысли точнее :D
|