Как рисовать в QT чтобы прошлые объекты не удалялись?
Суть в следующем, кликаю на lineAction чтобы нарисовать линию, затем когда кликаю например на квадрат, он появляется вместо линии, хотя в идеале линия должна сохраниться и я начну рисовать квадрат.
Как это пофиксить? Как сделать чтобы фигуры сохранялись?
p.s. scene и QGraphicsView не использовал
Александр Ананьев,
Скинул сразу весь код, на всякий случай. Если я правильно понимаю, окно очищается в функциях createLine, createEllipse, createRectangle с помощью update(), но если её убрать, то обновляться и рисоваться рисунок не будет.
When the paint event occurs, the update region has normally been erased, so you are painting on the widget's background
Поэтому, вам нужно где-то хранить нарисованные фигуры и каждый раз их перерисовывать на виджете.
И update лучше вызывать из обработчиков событий мыши, а не из paintEvent.