我正在尝试在我为冒泡/气球绘图所做的程序中创建一个保存功能。我唯一无法开始工作的是保存“工作副本”。就像图纸进行了修订更改一样,您无需重做所有工作。只需加载工作副本,然后添加/删除/重新排列气泡。我正在使用 tkinter 和画布。并为气泡创建椭圆和文本。但我想不出任何好方法来保存椭圆/文本对象中的信息。我试图腌制整个画布,但这似乎在使用谷歌搜索后不起作用。创建时pickle每个对象似乎只保存对象ID。1、2 等等。这也不起作用,因为一些气泡将被移动并接收新坐标。它们也可能有不同的颜色、大小等。在我的下一个方法中,我正在考虑将整个“can.create_oval(x1, y1, x2, y2, fill = fillC, outli....”作为字符串保存到 txt 并使用 eval 重新创建一个函数()有人对如何解决这个问题有什么好的建议吗?
1 回答

吃鸡游戏
TA贡献1829条经验 获得超7个赞
没有内置的方法来保存和恢复画布。但是,画布具有可用于获取有关画布上项目的所有信息的方法。您可以使用这些方法将此信息保存到文件中,然后读回该文件并重新创建对象。
find_all
- 将返回画布上所有对象的对象 ID 的有序列表type
- 将对象的类型作为字符串返回(“矩形”、“圆形”、“文本”等)itemconfig
- 返回一个包含对象所有配置值的字典。字典中的值是一个值列表,其中包括索引 3 处选项的默认值和索引 4 处的当前值。您可以使用它来仅保存已从默认值显式更改的选项值。gettags
- 返回与对象关联的标签列表
添加回答
举报
0/150
提交
取消