QGraphicsScene保存为文件并打开的问题
在QGraphicsScene中添加了很多自定义的可编辑的QGraphicsItem,请问如何保存为文件,并能打开?打开后自定义的QGraphicsItem照样能继续编辑?
[解决办法]
这个QGraphicsItem是界面部分,界面显示的内容可以根据数据来表示,也就是定义一个结构,如
typedef struct tagItemData {
int x, y;
int radius;
int r,g,b;//color
} TItemData;
比如我的项上是一个圆,data可以是圆在项上的位置,半径,圆的颜色,如上所示,这样你就可以把这分数据保存到文件里,
下次打开的时候,根据这个数据,你就又可以还原出项了。
[解决办法]
在Save的时候用QDataStream,将你要保存的内容进行序列化,
加载的时候 有进行反序列话。把他读到内存就ok
[解决办法]
举个简单的例子,如果你画了一系列的圆,那么你只需要保存所有圆的圆心和半径即可,打开时读取这些圆心和半径数据,并重新描绘出来。
难的不是怎么保存,而是怎么实现这些QGraphicsItem对象,因为你所说的可编辑的QGraphicsItem,是需要自己实现的吧?或者你说说看,“可编辑”指的是什么?