Я решил проблему при работе с QGraphicsScene и QPixmap.Я последовательно отображаю кадры, снятые камерой.Объект QTimer вызывает функцию updateSingleView () каждые 100 мс.Это моя внутренняя функция:
void CCIGui::updateSingleView()
{
unsigned char *const img = PGRSystem->SnapShot();
QImage Img(img, 1024, 768, QImage::Format_RGB888);
scenes.at(0)->removeItem(scenes.at(0)->items().at(0));
scenes.at(0)->addPixmap(QPixmap::fromImage(Img));
ui_camViews.at(0).graphicsView->setScene(scenes.at(0));
delete [] img;
}
Gui отображает вид с камеры, но, к сожалению, есть утечка памяти, при вызове scenes.at(0)->addPixmap(QPixmap::fromImage(Img));
я думал, что функция removeItem
должна уничтожить старую QPixmap, но, очевидно,не.Знаете ли вы, почему происходит утечка и как ее решить?