【问题标题】:Can Tkinter ttk.treeview iid overflow?Tkinter ttk.treeview iid 会溢出吗?
【发布时间】:2018-01-10 20:25:12
【问题描述】:

我正在使用 tkinter,特别是 ttk.treeview 小部件来显示元组。我做了很多插入,想知道 iid(项目标识符)是否会溢出或如何处理。我假设最大 iid 是 0xFFF,相当于 4095 base 10,因为它们被格式化为像“I001”这样的字符串。如果它们确实溢出,我该如何重用/删除 iid?

【问题讨论】:

  • 这应该很容易通过小测试找出来。为什么不创建一个树视图,然后创建一个循环来创建几百万个项目来看看会发生什么?

标签: python tkinter treeview ttk


【解决方案1】:

经过一些测试,我发现 iid 不仅是三位十六进制数,而且最多可以是五位。我说最多五个,因为在我的测试中,我在耗尽唯一 iid 的数量之前遇到了内存错误。在遇到内存问题之前,我得到了像“IEA600”这样的 iid。

从树视图中删除不到一百万个子项时,一个内存错误是“无法重新分配 3145736 字节”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-08-20
    • 2015-03-20
    • 2023-03-10
    • 2015-11-05
    • 2012-12-01
    • 2010-12-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多