Название: Отобразить единый график на несколько ячеек в QTableView (QTableWidget) сразу Отправлено: neosapient от Октябрь 23, 2009, 16:54 Хочу отобразить график результатов трассировки на несколько ячеек.
Насколько я понимаю, если использовать делегаты, то мне не получиться отображать график по всей длинне столбца. Как лучше поступить в этой ситуации, чтобы отобразить график по всей длинне столбца? Название: Re: Отобразить единый график на несколько ячеек в QTableView (QTableWidget) сразу Отправлено: Пантер от Октябрь 23, 2009, 17:21 А может рядом с таблицей разместить виджет, где и рисовать график?
Название: Re: Отобразить единый график на несколько ячеек в QTableView (QTableWidget) сразу Отправлено: baka от Октябрь 23, 2009, 20:02 Можно сделать чтоб делегат в каждой ячейке отрисовывал фрагмента графика относящегося только к этой ячейке.
Только тогда делегат должен узнавать значения точек в соседних ячейках(верхней и нижней). Либо хранить значения точек в QList. Название: Re: Отобразить единый график на несколько ячеек в QTableView (QTableWidget) сразу Отправлено: BaltikS от Октябрь 23, 2009, 20:22 А можно сделать объединение ячеек и нарисовать его в одной большой :)
Название: Re: Отобразить единый график на несколько ячеек в QTableView (QTableWidget) сразу Отправлено: neosapient от Октябрь 23, 2009, 20:36 А можно сделать объединение ячеек и нарисовать его в одной большой :) Это наверное мой вариант, как это сделать ? Можете привести пример ?Название: Re: Отобразить единый график на несколько ячеек в QTableView (QTableWidget) сразу Отправлено: BaltikS от Октябрь 23, 2009, 21:44 Нет, ну графики в ячейках я не рисовал... :)... А по поводу объединения ячеек смотри QTableView::setSpan
Название: Re: Отобразить единый график на несколько ячеек в QTableView (QTableWidget) сразу Отправлено: lit-uriy от Октябрь 23, 2009, 22:12 Мне кажется вариант baka более универсальный. И тем более, что для каждой строки, как я увидел в примере, нужна подпись значения, при объединении ячеек я думаю это создаст больше хлопот, чем чем получение значений соседних строк для рисования линий от точки до точки
Название: Re: Отобразить единый график на несколько ячеек в QTableView (QTableWidget) сразу Отправлено: neosapient от Октябрь 26, 2009, 23:27 Мне кажется вариант baka более универсальный. И тем более, что для каждой строки, как я увидел в примере, нужна подпись значения, при объединении ячеек я думаю это создаст больше хлопот, чем чем получение значений соседних строк для рисования линий от точки до точки Делаю QTableWidget, в который вставляю делегаты. График отрисовывается нормально. Далее вставляю этот виджет через QGraphicsProxyWidget в сцену, но делегаты нормально не отображаются - не обновляется содержимое ячеек. В чем может быть загвоздка? Название: Re: Отобразить единый график на несколько ячеек в QTableView (QTableWidget) сразу Отправлено: neosapient от Октябрь 27, 2009, 17:31 Сделал небольшой пример.
Есть диалог, в котором расположен QGraphicsView. В нем сделал QGraphicsProxyWidget, в который вставил QTableWidget. Первый столбец хранит значения соответствующего пика на графике. Второй столбец - это собственно график. График рисую за счет делегата GraphDelegate. Чтобы протестировать изменения на графике, сделал поток MyThread, который каждую секунду отсылал сигнал изменить случайную строку (вершину) графика на случайное значение. ------------ Чтобы график обновлялся автоматически, надо ставить флаг QGraphicsView::setViewportUpdateMode ( QGraphicsView::FullViewportUpdate ); |