QTime t; t.start(); if (t.elapsed() > 300) {тут описывается рисование другого объекта }
QPixmap pix(550,550);QPainter paint;paint.begin(&pix);QPolygonF polygon;polygon << QPointF(ox, oy) << QPointF(ox1, oy) << QPointF(ox1, oy1) << QPointF(ox, oy1);paint.drawPolygon(polygon);paint.end();
#include "qpaintwidget.h"#include "global.h"#include <QPainter>#include <QtCore>QPaintWidget::QPaintWidget(QWidget *parent) : QWidget(parent){}void QPaintWidget::paintEvent(QPaintEvent *){ QPainter p(this); // Создаём новый объект рисовальщика p.setWindow(QRect(-275,-290,550,550)); p.setPen(QPen(Qt::red,1,Qt::SolidLine)); //Рисуем координатную сетку QPolygonF polygon1; QPolygonF polygon2; polygon1 << QPointF(0,250) << QPointF(0,-250); polygon2 << QPointF(-250,0) << QPointF(250,0); p.drawPolygon(polygon1); p.drawPolygon(polygon2); //Штрихи на сетке for (int i = -250; i <= 250; i = i + 10) { QPolygonF polygon3; QPolygonF polygon4; polygon3 << QPointF(i, 0) << QPointF(i, 5); polygon4 << QPointF(0, i) << QPointF(5, i); p.drawPolygon(polygon3); p.drawPolygon(polygon4); } //рисуем квадрат p.setPen(QPen(Qt::black, 1, Qt::SolidLine)); QPolygonF polygon; polygon << QPointF(ox, oy) << QPointF(ox1, oy) << QPointF(ox1, oy1) << QPointF(ox, oy1); QTransform transform = p.transform(); transform.rotate(180, Qt::XAxis); p.drawPolygon(polygon); p.setTransform(transform); //Выводим надпись QMatrix matrix; matrix.rotate(360); QString str; str = tr("Строим квадрат со стороной 20, координаты левой нижней вершины заданы пользователем"); p.setMatrix(matrix); p.setFont(QFont("Times", 9, QFont::Bold)); p.setPen(QPen(Qt::darkGreen)); p.drawText(-250, -260, str);}