当前位置: 代码迷 >> QT开发 >> QGraphicsItem映射成图片的有关问题
  详细解决方案

QGraphicsItem映射成图片的有关问题

热度:18   发布时间:2016-04-25 04:22:48.0
QGraphicsItem映射成图片的问题
有什么好的方法将一个继承QGraphicsItem写的item映射成图片,供有特效的时候用,最好是不占用及多的时间,先谢谢各位了~
------最佳解决方案--------------------
QPixmap pixmap;
QPainter painter(&pixmap);


QGraphicsScene::render(&painter, xxxxxxx);
------其他解决方案--------------------
引用:
QPixmap pixmap;
QPainter painter(&pixmap);


QGraphicsScene::render(&painter, xxxxxxx);

其实已经解决问题了,就是要多用一些内存,每个item内用一个QPixmap储存paint出来的结果,再把这个pixmap画到屏幕上,不管隐藏与否,pixmap上总会有上一次画图的内容。
------其他解决方案--------------------
怎么都朩有人,顶顶~
------其他解决方案--------------------
这是QGraphicsScene,我所说的是QGraphicsItem的截图,所括隐藏的QGraphicsItem的截图,哪位大哥指点一下,真心有用~
------其他解决方案--------------------
render函数可以设置item的位子。这样就可以画出来了。
当然
render函数和paint函数一样。会对这个rect的区域中的item做很多的判断。遗憾的隐藏的就不会画出来了。

所以隐藏的需要自己写。

Ps:还有个方法。就是再继承自Qwidget 用QWidget::render()自己的方法。没试过。姑且尽管一试。
------其他解决方案--------------------
引用:
引用:

QPixmap pixmap;
QPainter painter(&pixmap);


QGraphicsScene::render(&painter, xxxxxxx);

其实已经解决问题了,就是要多用一些内存,每个item内用一个QPixmap储存paint出来的结果,再把这个pixmap画到屏幕上,不管隐藏与否……
怎么把paint出来的结果储存在QPixmap里?
------其他解决方案--------------------
先paint到pixmap上,再将pixmap画到屏幕上,这样pixmap就储存了一幅图片。