1
我没有任何文件流的经验,并尝试将场景项保存到文件供以后使用。 我使用PySide和Qt 4.7 lib。我是否必须使用writeRawData来保存项目清单或什么?如何在文件中保存Qt图形场景项并再次打开它?
我将不胜感激任何帮助。一些例子会使我的一天。谢谢。
我没有任何文件流的经验,并尝试将场景项保存到文件供以后使用。 我使用PySide和Qt 4.7 lib。我是否必须使用writeRawData来保存项目清单或什么?如何在文件中保存Qt图形场景项并再次打开它?
我将不胜感激任何帮助。一些例子会使我的一天。谢谢。
没有办法直接保存一个QGraphicsItem在一个文件中(除了一个像素图),你可以重新加载。
但是,您可以创建一个文件,其中包含视图中每个项目的说明。您需要做的是列出定义每个项目的每个信息(项目类型,位置,形状等)并将它们存储在一个文件中。
例如,收集了矩形,椭圆和线项目的信息:
scene = QGraphicsScene();
scene.addEllipse(100, 100, 50, 50)
scene.addRect(200, 12, 120, 50)
scene.addLine(50, 70, 100, 400)
for item in scene.items():
if item.type() == QGraphicsEllipseItem().type():
print "Ellipse", item.rect()
elif item.type() == QGraphicsRectItem().type():
print "Rectangle", item.rect()
elif item.type() == QGraphicsLineItem().type():
print "Line", item.line().p1(), item.line().p2()
谢谢,然后我会用咸菜。 – Alex 2013-03-01 16:47:09