关于如何使用 Tkinter 将函数结果打印到标签字段的建议 python
Suggestion on how to print result from function into a label field with Tkinter python
尝试使用 tkinker gui 从函数中获取结果以打印到空标签。我自己搜索并尝试过,但我不知道该怎么做。让它打印到终端没问题,但打印到标签上就不行了。我一直在看 youtube 教程,并试图自己破解一些东西。我遇到了很多障碍,但是学习这项技能真是太神奇了:)如果有人能帮我解决这个问题,我将不胜感激!
代码如下:
from tkinter import *
root = Tk()
#Labels
head_label = Label(text="Calculates weight pr meter:")
weight_plank_label = Label(text="Weight in gram:")
lenght_plank_label = Label(text="Lenght in mm:")
#Entry field
weight_entry = Entry(root)
lenght_entry = Entry(root)
#Text field label
weight_meter_show = Label(root, text="FUNCTION RESULT HERE", height=1, width=20) # Want result from "def weight():" to show in this Text box
#Calc weight function
def weight():
x = weight_entry.get()
y = lenght_entry.get()
z = (int(x) / int(y))
print(z)
#Button
calc_btn = Button(height=1, width=8, text="Calculate", command=weight)
#Shoving it to root window
head_label.grid(row=0, column=0)
weight_plank_label.grid(row=1, column=0)
lenght_plank_label.grid(row=2, column=0)
weight_entry.grid(row=1, column=1)
lenght_entry.grid(row=2, column=1)
calc_btn.grid(row=3, column=0)
weight_meter_show.grid(row=4, column=0)
root.mainloop()
如 Tim Robert 所说,只需添加:
weight_meter_show.config( text=str(z))
而不是打印你的体重定义。
def weight():
x = weight_entry.get()
y = lenght_entry.get()
z = (int(x) / int(y))
weight_meter_show.config(text=str(z))
尝试使用 tkinker gui 从函数中获取结果以打印到空标签。我自己搜索并尝试过,但我不知道该怎么做。让它打印到终端没问题,但打印到标签上就不行了。我一直在看 youtube 教程,并试图自己破解一些东西。我遇到了很多障碍,但是学习这项技能真是太神奇了:)如果有人能帮我解决这个问题,我将不胜感激!
代码如下:
from tkinter import *
root = Tk()
#Labels
head_label = Label(text="Calculates weight pr meter:")
weight_plank_label = Label(text="Weight in gram:")
lenght_plank_label = Label(text="Lenght in mm:")
#Entry field
weight_entry = Entry(root)
lenght_entry = Entry(root)
#Text field label
weight_meter_show = Label(root, text="FUNCTION RESULT HERE", height=1, width=20) # Want result from "def weight():" to show in this Text box
#Calc weight function
def weight():
x = weight_entry.get()
y = lenght_entry.get()
z = (int(x) / int(y))
print(z)
#Button
calc_btn = Button(height=1, width=8, text="Calculate", command=weight)
#Shoving it to root window
head_label.grid(row=0, column=0)
weight_plank_label.grid(row=1, column=0)
lenght_plank_label.grid(row=2, column=0)
weight_entry.grid(row=1, column=1)
lenght_entry.grid(row=2, column=1)
calc_btn.grid(row=3, column=0)
weight_meter_show.grid(row=4, column=0)
root.mainloop()
如 Tim Robert 所说,只需添加:
weight_meter_show.config( text=str(z))
而不是打印你的体重定义。
def weight():
x = weight_entry.get()
y = lenght_entry.get()
z = (int(x) / int(y))
weight_meter_show.config(text=str(z))