Qpainter在特定宽度上绘制图像将不起作用

时间:2019-01-18 02:55:30

标签: qt

我是Qt的初学者。我想将图像绘制到通过使用ui设计器将小部件拖动到主窗口而创建的小部件上。以下是我的代码:

void MainWindow::paintEvent(QPaintEvent *)
{
    QPainter painter(this);
    QRect target(30, 30, 100, 100);
    QImage qimg;
    if (qimg.load("Lena.png"))
    {
        qDebug() <<"image loaded";
        QPainter painter(ui->myWidget); //I simply drag a widget named myWidget to the mainindow using ui designer

        painter.drawImage(target, qimg);
//        painter.drawLine(30,30,100,100); //doesn't work
//        painter.drawRect(QRect(30, 30, 20, 10)); //doesn't work
    }

}

运行这些代码只会提供一个空白窗口。如果将ui->myWidget更改为this,则可以将图像绘制到主窗口上,而不是特定的窗口小部件上。

是否有某种方法可以在给定的小部件上绘制图像?

0 个答案:

没有答案