tkinter .get metho d 无法正常工作



我正在尝试为学校项目制作一个公式计算器。我正在尝试使用 .get tkinter 方法来获取条目中的内容。它总是发送错误。不过我不想把它写进一个类。

这不是最终代码。

from tkinter import *
def speedCalc():
    _distance = spDistance.get()
    _time = spTime.get()
spDistance = Entry(speed).grid(row=1, column=1)
spTime = Entry(speed).grid(row=2, column=1)
spSpeed = Entry(speed).grid(row=3, column=1)
spConvert = Button(speed, text="Calculate", command=speedCalc)
spConvert.grid(row=4, column=1)

当我执行代码时,它在控制台上说:

Exception in Tkinter callback
Traceback (most recent call last):
  File"C:UsersJackPAppDataLocalProgramsPythonPython36libtkinter__init__.py", line 1699, in __call__
return self.func(*args)
  File "C:/Users/JackP/Desktop/Python Projets/Formula App/4. Extention.py", line 25, in speedCalc
_distance = spDistance.get()
AttributeError: 'NoneType' object has no attribute 'get'
不能在

初始化的同一行上使用gridpack等布局。你必须把它们放在单独的行上:

spDistance = Entry(speed)
spDistance.grid(row=1, column=1)

将小部件分配给变量时,不要直接在同一行上调用小部件上的布局管理器方法;而是在另一行
上调用。原因是雷特布局管理器packgridplace返回None

from tkinter import *
def speedCalc():
    _distance = spDistance.get()
    _time = spTime.get()
spDistance = Entry(speed)
spDistance.grid(row=1, column=1)
spTime = Entry(speed)
spTime.grid(row=2, column=1)
spSpeed = Entry(speed)
spSpeed.grid(row=3, column=1)
spConvert = Button(speed, text="Calculate", command=speedCalc)
spConvert.grid(row=4, column=1)

相关内容

  • 没有找到相关文章

最新更新