Название: QTreeWidget выделить элемент рамкой Отправлено: deMax от Январь 23, 2015, 10:27 Как в QTreeWidget выделить одной рамкой "активный" элемент (2 колонки)? Активный элемент выбирается двойным кликом мышки или нажатием enter/space.
Можно ли сделать через делегат или так пойдет? Код: void TreeWidgetList::paintEvent(QPaintEvent *event) Если выбрать новый элемент старые рамки остаются(ручками repaint запускать надо) Название: Re: QTreeWidget выделить элемент рамкой Отправлено: __Heaven__ от Январь 23, 2015, 10:49 Как насчёт void QTreeView::setAllColumnsShowFocus(bool enable) (http://doc.qt.io/qt-5/qtreeview.html#allColumnsShowFocus-prop)?
Название: Re: QTreeWidget выделить элемент рамкой Отправлено: Пантер от Январь 23, 2015, 10:49 ИМХО, лучше делегатом сделать, если нужно не все колонки выделять.
Название: Re: QTreeWidget выделить элемент рамкой Отправлено: deMax от Январь 23, 2015, 11:14 Да нет у меня это по сути список, просто с колонками.
Не могу repaint победить, со старых элементов не стираются рамки. Только свернуть/развернуть работает. Код: if(item<topLevelItemCount()) { Даже просто вызов repaint() не затирает рамки Название: Re: QTreeWidget выделить элемент рамкой Отправлено: __Heaven__ от Январь 23, 2015, 12:48 Как насчёт void QTreeView::setAllColumnsShowFocus(bool enable) (http://doc.qt.io/qt-5/qtreeview.html#allColumnsShowFocus-prop)? Название: Re: QTreeWidget выделить элемент рамкой Отправлено: deMax от Январь 23, 2015, 14:07 Как насчёт void QTreeView::setAllColumnsShowFocus(bool enable) (http://doc.qt.io/qt-5/qtreeview.html#allColumnsShowFocus-prop)? Спасибо, так смотрится лучше.repaint не победил(даже если исправить, как то некрасиво эта рамочка выглядит). Сделал выделение жирным. |