Название: Виджет для рисования Отправлено: bitwise от Март 11, 2010, 22:49 Подскажите пожалуйста, если я хочу нарисовать 2D-диаграмму, в каком виджете это можно/нужно делать?
Пытаюсь использовать QGraphicsView и рисовать на нем, но ничего не получается... ??? Название: Re: Виджет для рисования Отправлено: BRE от Март 11, 2010, 22:58 Посмотри в примерах на Chart Example.
Название: Re: Виджет для рисования Отправлено: bitwise от Март 11, 2010, 23:18 а в QGraphicsView это возможно? Для моей задачи мне достаточно было бы ломаную линию изобразить - так проще.
Название: Re: Виджет для рисования Отправлено: BRE от Март 11, 2010, 23:29 а в QGraphicsView это возможно? Для моей задачи мне достаточно было бы ломаную линию изобразить - так проще. Ну тогда смотри Diagram Scene Example. :)Название: Re: Виджет для рисования Отправлено: bitwise от Март 11, 2010, 23:32 Ok. Спасибо :)
Название: Re: Виджет для рисования Отправлено: ieroglif от Март 12, 2010, 00:52 Код: // wgt.h Название: Re: Виджет для рисования Отправлено: bitwise от Март 12, 2010, 22:09 Код: // wgt.h если я правильно понимаю, чтобы рисовать в дочернем виджете, например в QGraphicsView, код должен выглядеть как-то так: Код: QPainter painter(ui->graphicsView); все верно? Название: Re: Виджет для рисования Отправлено: lit-uriy от Март 13, 2010, 11:59 bitwise, принципиально рисовать можно только на самом себе. Т.е. в обработчике события paintEvent данного виджета. Рисование на чужом виджете задача не тривиальная.
Графическое представление (Graphics View Framework) имеет несколько иную идею: Ты создаёшь элементы и помещаешь их на сцену, а представление (QGraphicsView) отображает содержимое сцены. На мой взгляд графики и Графическое представление неудачная пара. Просто создай наследника от QWidget и в его paintEvent рисуй. Или воспользуйся готовой библиотекой Qwt Название: Re: Виджет для рисования Отправлено: ieroglif от Март 19, 2010, 20:36 в paintEvent ты создаёшь QPainter(this) - вот указатель на него можешь кидать кому и куда угодно - в любые другие классы и функции - тогда код рисования будет осуществляться в других классах, а само рисование - на твоём виджете.
|