如何从条目(Tkinter)获取值,如何在公式中使用它并在标签中打印结果

时间:2018-11-15 06:15:05

标签: python tkinter tkinter-entry

使用Tkinter的函数条目时,您可以编写一个字符串值并对其进行处理;但我实际上正在使用公式。这个想法很简单:将一堆盒子装满数字(压力,推力,应力,温度等),然后取这些数字,应用公式并在同一窗口中显示结果。

我该怎么做?

我一直在搜索几个小时而没有一个令人困惑的解决方案。

似乎此页面上的那个人也遇到了同样的麻烦,但是我不理解解决方案的精髓:How to get value from entry(Tkinter), use it in formula and print the result it in label

这里也是我可以得到的少数几个例子(仅2个),但对我来说,比上面的例子复杂得多:

https://www.python-course.eu/tkinter_entry_widgets.php

如果某人可以共享一个完整的程序,该程序向我解释了如何在以后的项目中应用从字符串条目中获取数值的概念,我将非常高兴。

1 个答案:

答案 0 :(得分:1)

您可以通过小部件的.get()获取值

from tkinter import *
#Create the window
myWindow = Tk()

#Define your formula here
def MyCalculateFunction():

    #Get your value from box_pressure
    #Remember to convert string to integer or float / double
    pressure, temprature = float(box_pressure.get()), float(box_temprature.get())
    result = pressure + temprature

    #Show your result with label
    label_result.config(text="%f + %f = %f" % (pressure, temprature, result))

#Create a input box for pressure
box_pressure = Entry(myWindow)
box_pressure.pack()

#Create a input box for temprature
box_temprature = Entry(myWindow)
box_temprature.pack()

#Create a button
button_calculate = Button(myWindow, text="Calcuate", command=MyCalculateFunction)
button_calculate.pack()

#Create a label
label_result = Label(myWindow)
label_result.pack()

或从textvariable获取它

#Bind it with variable
variable_pressure = DoubleVar()
box_pressure = Entry(myWindow, textvariable=variable_pressure)
box_pressure.pack()

#Get/Set value by .get() / .set()
variable_pressure.set(42)

# shows 42
print(variable_pressure.get())