Возможно ли рисовать на виджете при помощи QPainter вне функции paintEvent ()? В документации написано, что из всех стандартных бэкэндов, QWidget единственный, на котором можно рисовать только внутри paintEvent().
Но так же там сказано, что можно создать собственный бэкэнд, унаследовавшись от QPaintDevice и переопределив paintEngine().Непонятно как реализовывать paintEngine().
class Test :public QPaintDevice, public QWidget {
public:
//Метод от QPaintDevice, который требуется переопределить:
QPaintEngine* paintEngine() const {
//Что должно быть здесь?
}
};
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Test test;
QPainter painter(&test);
painter.drawLine(100, 100, 200, 200);
test.show();
return a.exec();
}
В результате выполнения этого кода, нужно что-бы на виджете test рисовалась линия из (100,100) в (200,200)
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники