April 2018
Beginner
714 pages
18h 21m
English
Let's extend our code so that all future operations focus only on drawing within the border boundaries after the border is drawn. Use the window and viewport transformation, as follows:
void Widget::paintEvent(QPaintEvent *) {
QPainter painter(this);
painter.setRenderHint(QPainter::Antialiasing, true);
QPen pen(Qt::black);
pen.setWidth(4);
painter.setPen(pen);
QRect r = rect().adjusted(10, 10, -10, -10);
painter.drawRoundedRect(r, 20, 10);
painter.save();
r.adjust(2, 2, -2, -2);
painter.setViewport(r);
r.moveTo(0, -r.height() / 2);
painter.setWindow(r);
drawChart(&painter, r);
painter.restore();
}
Also, create a protected method called drawChart():
void Widget::drawChart(QPainter *painter, const ...
Read now
Unlock full access