我是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
,则可以将图像绘制到主窗口上,而不是特定的窗口小部件上。
是否有某种方法可以在给定的小部件上绘制图像?