我使用 QLabel 来显示伪视频流。由于我要对像素进行大量计算,因此我使用 QImage bits() 函数,然后将其转换为像素图以在 QLabel 上显示。到目前为止,我正在使用:
for(...)
{
computeImage(&myImage);
myLabel->setPixmap(QPixmap::fromImage(myImage));
}
但是,由于QPixmap::fromImage(...)
函数总是创建一个新的 QPixmap 对象,我尝试了以下谁应该更有效率:
QPixmap myPixmap;
for(...)
{
computeImage(&myImage);
bool b = myPixmap.convertFromImage(myImage);
myLabel->setPixmap(myPixmap);
}
它适用于第一次显示,但之后不会刷新。“b”变量始终为真,因此转换效果很好。我什至尝试过repaint()
或update()
标签,但它不起作用。标签仍然永远显示第一个图像。