我想创建一个新窗口并在其中显示QImage。
void Demo::on_pushButton_clicked()
{
//create and show new window that displays a QImage
}
是否可以在新窗口中使用QPixmap来显示我的QImage?
最简单的方法。
QLabel *l = new QLabel;
l->setPixmap(QPixmap::fromImage(QImage("path")));
l->setAttribute(Qt::WA_DeleteOnClose);
l->show();
如果使用QImage
,则应首先将其转换为QPixmap
。QPixmap
有特殊的静态方法可以做到这一点:fromImage
。
http://qt-project.org/doc/qt-4.8/qpixmap.html#fromImage
我也在这里用过Qt::WA_DeleteOnClose
。它是什么?这是特殊属性,使用此属性,Qt
当有人关闭标签时,它将自动删除标签。我们需要这样做是因为我们没有将parent设置为,QLabel
所以我们可能会发生内存泄漏,但是有了这个属性,一切都会好起来的。您也可以setGeometry()
自己标记。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句