Python pickle 模块提供了把对象序列化的方法,对象会被序列化成ASCII的字符串,可以保存到文件。unpickle则可以从文件或字符中反序列化成对象。如下的两个方法非常有用。
?
我在使用wx时,wxGrid的GetCellValue方法只能返回字符串。但我希望它可以返回我定义的对象,于是我找到了pickle。我在类中重写__str__()方法,使用pickle来序列化这个对象。
例子:
然后我在自己定义的wxGridTable中设置了这个数据,GridCellEditor中的重写的
BeginEditor方法
这样就可以摆脱GetCellValue只能返回wxString的限制了。把对象传输过来,用glCanvas来绘制。

--------------------------------------分割线 --------------------------------------