Название: resizeEvent для QChart Отправлено: oBOXPOH от Мая 12, 2017, 10:14 Всем здравствуйте!
Сейчас стараюсь сделать resizeEvent хотя бы для какого-то элемента. У меня есть мною созданный ClassChart, который наследует QChart. В нём есть конструктор, который создаёт 2 элемента QGraphicsSimpleTextItem, а также обработчик resizeEvent. Код далее. Заголовочный: Код: #ifndef CLASSCHART_H Исходник: Код: #include "classchart.h" По идее, когда этот ClassChart изменяет размеры, должен вызываться обработчик события QResizeEvent, но этого не происходит - 2 элемента для координат всегда находятся в левом верхнем углу относительно ClassChart. Если лезть ещё глубже, то у меня есть главное окно, в котором используется созданный виджет, в котором есть этот ClassChart. При изменении размеров главного окна событие в ClassChart не приходит. Помогите, пожалуйста. Я уже вообще жесть напотел! Название: Re: resizeEvent для QChart Отправлено: VPS от Мая 12, 2017, 10:59 Если Вы используете современный синтаксис, то поставьте в конце объявления метода "resizeEvent" спецификатор "override". Думаю, что дальше поймёте в чём дело.
Название: Re: resizeEvent для QChart Отправлено: oBOXPOH от Мая 12, 2017, 11:41 Если Вы используете современный синтаксис, то поставьте в конце объявления метода "resizeEvent" спецификатор "override". Думаю, что дальше поймёте в чём дело. Честно, я уже это пробовал, но пишет ошибку, что функция не является перегруженной. А это, скорее всего, потому, что в QChart, от которого я наследую свой класс, метод не является виртуальным.Есть какие-нибудь ещё идеи? Синтаксис, кстати, я, вроде, использую стандартный. Название: Re: resizeEvent для QChart Отправлено: kuzulis от Мая 12, 2017, 11:56 [disclaimer]
Не используйте QChart, т.к. он ооочень медленный и ооочень требовательный к ресурсам. Используйте Qwt (предпочтительно) или QCustomPlot (на худой конец). [/disclaimer] Название: Re: resizeEvent для QChart Отправлено: VPS от Мая 12, 2017, 12:00 А это, скорее всего, потому, что в QChart, от которого я наследую свой класс, метод не является виртуальным. Пишет это из-за того, что у класса QChart другой тип параметра в методе resizeEvent (он наследует метод от класса QGraphicsWidget): Код: resizeEvent(QGraphicsSceneResizeEvent *event) Название: Re: resizeEvent для QChart Отправлено: oBOXPOH от Мая 12, 2017, 12:20 А это, скорее всего, потому, что в QChart, от которого я наследую свой класс, метод не является виртуальным. Пишет это из-за того, что у класса QChart другой тип параметра в методе resizeEvent (он наследует метод от класса QGraphicsWidget): Код: resizeEvent(QGraphicsSceneResizeEvent *event) Стало значительно яснее и понятнее! Ещё раз спасибо большое! |