0

単純な四角形を描画する必要がありますが、 update() 関数を呼び出しても何もしません。これが私のコードです:

...//this is called when button is pressed, when application loads nothing should be drawn.

    draw = true;
    update();
}

void MainWindow::paintEvent(QPaintEvent *e){
    QPainter painter(this);
    QLinearGradient lg(QPoint(20, 80), QPoint(215, 390));
    lg.setColorAt(0, Qt::white);
    lg.setColorAt(1, Qt::blue);
    QBrush brush(lg);
    painter.setPen(Qt::black);
    painter.setBrush(brush);
    if(draw == true){
    painter.drawRect(20, 80, 195, 300);
}
}
4

1 に答える 1

0

追加してみてください

e->accept()

paintEvent関数の最後に。

于 2013-02-28T12:37:17.717 に答える