我刚开始在QT工作,我试图改变每帧像素图的一些像素颜色。
QGraphicsScene *graphic = new QGraphicsScene(this);
QPixmap LifeMap=QPixmap(QPixmap::fromImage(LifeGrid));
这是我的图形场景和我的pixmap声明。
所以在我调用每个帧的函数中,我使用这行代码更新pixmap
graphic->addPixmap(QPixmap::fromImage(LifeGrid));
它工作,但每隔几秒我的内存越来越少。我的记忆力已经满了,我的电脑停止工作,我什么都做不了。 (我猜它与addPixmap函数有关,因为它决定了一个全新的像素图)
那么是否有一个函数可以让我只更新这个图形,或更改像素图?
提前致谢!
答案 0 :(得分:2)
是否有一个允许我更新此图形或更改像素图的功能?
是。每次像素图更改时,您必须使用单个像素图项而不是创建新项。您还可以按值继续保存场景和项目,节省额外的间接层,并利用C ++编译器自动为您完成所有内存管理:
overflow:hidden