100分求助QT编程高手,关于QGraphicsView内存泄露的问题。
是这样的,我想通过QGraphicsView控件来显示图片,QPixmappixMap;QGraphicsScenemyScene;QImageimg("2.bmp");...
是这样的,我想通过QGraphicsView控件来显示图片,
QPixmap pixMap;
QGraphicsScene myScene;
QImage img("2.bmp");
pixMap=QPixmap::fromImage(img.scaled(size(),Qt::KeepAspectRatio));
myScene->addPixmap(pixMap);
ui->graphicsViewShowImg->setScene(myScene);
我通过上面的代码来显示图片。
当我想显示其他图片的时候,我就重复上面的代码,就把img的路径改下。然后问题来了,好像前一次myScene的内存不能被释放,然后如果不断显示其它图片的话,这个程序消耗的内存就会一直增加,也就是每显示一次图片,就增加图片大小的内存,前面使用的内存不能被释放。
求大神指导如何是好。 展开
QPixmap pixMap;
QGraphicsScene myScene;
QImage img("2.bmp");
pixMap=QPixmap::fromImage(img.scaled(size(),Qt::KeepAspectRatio));
myScene->addPixmap(pixMap);
ui->graphicsViewShowImg->setScene(myScene);
我通过上面的代码来显示图片。
当我想显示其他图片的时候,我就重复上面的代码,就把img的路径改下。然后问题来了,好像前一次myScene的内存不能被释放,然后如果不断显示其它图片的话,这个程序消耗的内存就会一直增加,也就是每显示一次图片,就增加图片大小的内存,前面使用的内存不能被释放。
求大神指导如何是好。 展开
2个回答
科博尔
2024-10-31 广告
2024-10-31 广告
QT400-18是一种球墨铸铁材料,QT代表“球铁”,400表示其抗拉强度为400MPa,18则表示延伸率为18%。该材料属于铁素体型球墨铸铁,具有良好的韧性和塑性,能够承受高冲击振动及扭转等动、静载荷,特别在低温工作条件下具有较好的冲击性...
点击进入详情页
本回答由科博尔提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询