我正在使用QGraphicsScene来显示视频。我有两种模式,其中显示两个不同的视频。我正在使用QGraphicsPixmapItem并在其上显示视频。当我从一个视频切换到另一个视频时,它不会立即显示最新的帧。在2或3秒内,可以看到该视图的最后一次看到的图像。我已经尝试使用removeItem()和delete删除pixmap项目,每次我切换视图,但它没有帮助。有人可以建议我如何解决这个问题吗?
//Member variables
QGraphicsPixmapItem *m_pixItemZoomTrue;
QGraphicsPixmapItem *m_pixItemZoomFalse;
QGraphicsScene m_sceneZoomTrue;
QGraphicsScene m_sceneZoomFalse;
//Slot called on button click
void ZoomSelectionTrue()
{
//Remove the item from scene of ZoomSelectionFalse
m_sceneZoomFalse->removeItem(m_pixItemZoomFalse);
//Add item to the scene of ZoomSelectionTrue
m_pixItemZoomTrue = new QGraphicsPixItem();
m_sceneZoomTrue->addItem(m_pixItemZoomTrue);
//Rest code for adding pixmap to the pix item.
}
void ZoomSelectionFalse()
{
m_sceneZoomTrue->removeItem(m_pixItemZoomTrue);
m_pixItemZoomFalse = new QGraphicsPixItem();
m_sceneZoomFalse->addItem(m_pixItemZoomFalse);
//Rest code for adding pixmap to the pix item.
}
谢谢。