我目前正在尝试创建一个Python3 Tkinter程序,我可以通过双击或打开其他python脚本来启动它,而不是通过空闲。
到目前为止,我没有运气,因为当我尝试启动脚本时,控制台会打开片刻然后崩溃。
编辑:删除代码的徽标部分允许程序运行。任何想法为什么以及如何解决它?此外,我没有必要通过控制台运行一个程序,然后运气不佳。
from tkinter import *
from tkinter import ttk
root = Tk()
root.title("Kinematics")
Logo_frame = LabelFrame(root, bg = "white")
Logo_frame.grid(row=0, column=12, sticky = "NSEW")
#Logo
Logo = Image(file="Logo-S.gif")
image_label = ttk.Label(Logo_frame, image=Logo)
image_label.grid(row=0, column=0, rowspan = 3)
root.mainloop()
答案 0 :(得分:0)
您现有代码的错误是:
Exception ignored in: <bound method Image.__del__ of <tkinter.Image object at 0x7f1aa91df2e8>>
Traceback (most recent call last):
File "/usr/lib/python3.5/tkinter/__init__.py", line 3357, in __del__
if self.name:
AttributeError: 'Image' object has no attribute 'name'
Traceback (most recent call last):
File "/home/sunbear/Coding/python35/tkinter/stackoverflow_questions/test52.py", line 22, in <module>
Logo = Image(file="Logo-S.gif")
TypeError: __init__() missing 1 required positional argument: 'imgtype'
第22行的命令中有一个拼写错误(编辑前的原始代码)。您需要进行以下更正以克服此错误,即:
#Logo
#Logo = Image(file="Logo-S.gif")
Logo = PhotoImage(file="Logo-S.gif") #you should change to this.
您可以使用我提供给您的链接,详细了解何时使用PhotoImage and Image。
答案 1 :(得分:0)