Название: Customize Views Отправлено: ammaximus от Февраль 17, 2015, 14:02 Понадобилось откустомайзить внешний вид для TreeView:
1. Хочу чтобы для parent узлов (Interface) была одна большая ячейка, ибо они не помещаются в одну, для child таблица на три, как и сейчас. Ну вроде объединения ячеек в excel для строк-родителей. Не найдя решения вопроса напрямую решил унаследоваться от QTreeView или QStyledItemDelegate. Но QTreeView::drawRow предлагает рисовать с помощью QPainter, я же надеялся наклепать строку из готовых виджетов - QLineEdit. Название: Re: Customize Views Отправлено: Johnik от Февраль 17, 2015, 14:25 есть метод:
Код
Название: Re: Customize Views Отправлено: ammaximus от Февраль 17, 2015, 14:48 Спасибо!
Название: Re: Customize Views Отправлено: ammaximus от Февраль 17, 2015, 14:55 Но все же, допустим я хочу использовать кастомный виджет для отображения содержимого. Виджет собраный из стандартных, а не рисованый полностью, как здесь предлагается. И задать правила для связки данных.
В андроид для этого есть адаптеры, где перечисляешь какой вьюхе какое поле из Map назначить, а как это делается в Qt? Название: Re: Customize Views Отправлено: vipet от Февраль 17, 2015, 15:47 Делагаты. QAbstractItemDelegate и пара его наследников. В examples есть примеры.
Также может оказаться полезным QItemEditorFactory. Название: Re: Customize Views Отправлено: ammaximus от Февраль 19, 2015, 23:03 Допустим у меня есть виджет который "хорошо" отображает объект собственного класса А. Также у меня есть QList<A>.
Я элементарно запихал все виджеты в QLayout внутри QScrollArea и доволен. Но может ли Model-View помочь мне в этой ситуации? Да, есть QItemDelegate, но он не виджет и предлагает мне переопределить paint. Я не хочу писать рисование, у меня уже есть виджет из стандартных компонентов. QDataWidgetMapper что-то похожее, но он не работает с видом и позволяет видеть только один индекс в один момент времени. Еще вариант, допустим таблица. Каждая строка элемент. В конце строки кнопка - крестик, для удаления. Неужели такое нельзя сделать? Видимо вот эта тема описывает мою ситуацию: https://toster.ru/q/39263 Название: Re: Customize Views Отправлено: Bepec от Февраль 20, 2015, 00:23 Ну я открывал принудительно редактор. Контролировал количество одновременно показываемых ячеек и им открывал.
Были мысли вроде переопределить один виджет с многими состояниями и только раздавать ссылки, но они завяли, т.к. и вышеприведённый результат удовлетворил. |