微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

模块和 __init__ 的 Tkinter python GUI 问题

如何解决模块和 __init__ 的 Tkinter python GUI 问题

所以我找到了这个程序,“BoxParti”由用户 tpvasconcelos 制作,我认为它可以极大地帮助我进行研究。可悲的是,它使用了一些我以前从未使用过的软件包,让它为我工作有点问题。我没有更改代码中的任何内容,但它不想与我一起工作。问题主要出在 tkinter 上,我对它不太熟悉。我以前从未使用过 GUI,所以这对我来说有点棘手。目前我只想让程序工作并检查它是否真的对我有用。我一直试图让它自己工作,但我没有成功。这对我来说有点复杂,因为我有一段时间没有使用过 python + 还没有真正使用过任何东西的 GUI。下面我粘贴链接以下载代码。我在 Python 3.8 或 2.7 上运行它,在两个版本上我都遇到相同的错误。在链接下方我粘贴了错误日志。我将不胜感激任何可能将我推向正确方向的提示,因为在我看来我很迷茫

https://github.com/TPVasconcelos/BoxParti

Traceback (most recent call last):
  File "BoxParti.py",line 1493,in <module>
    app = BoxParti()
  File "BoxParti.py",line 53,in __init__
    frame = F(container,self)
  File "BoxParti.py",line 151,in __init__
    self.make_plot(frame)
  File "BoxParti.py",line 176,in make_plot
    self.canvas.show()
AttributeError: 'figureCanvasTkAgg' object has no attribute 'show'

解决方法

此代码可能适用于 Python 的早期版本,例如蟒蛇 3.5。有几件事已被弃用。这意味着,您必须找到正确的包。

例如,如果您取消注释以下代码,则代码将在 Python 3.8 上运行。

取消注释:#self.canvas.show() 行; 177,610,646,692,817,1268,1299,1371

也取消注释; self.canvas.get_tk_widget()#.grid(row=0,column=1),在行 179,819.

但它不显示 2D 或 3D 动画。这可能是因为取消注释 self.canvas.show()

因此,如果要运行此代码,则必须找到旧版本所需的库。我不建议这样做。

与此不同,BoxParti 已扩展为 mdsea,您可以安装 mdsea,这可能会更好。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。