2013-03-01 110 views

回答

1

没有办法直接保存一个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() 
+0

谢谢,然后我会用咸菜。 – Alex 2013-03-01 16:47:09