如何从tkinter向python脚本获取条目输入?
几周前我开始用Python编程。我已经做了一个python程序,因此我现在用tkinter做一个gui。gui中的用户输入将由我已经编写的python程序处理。但是,当我运行我的程序并希望使用python程序中输入字段中的值时,它不会打印输入值。而是打印0,0 我得到了以下代码: 我得到了一个类,我用tkinter(gui_Pump.py)为我的gui制作了一个框架: 我得到了我的python程序,我想在其中处理输入值(pump.py)如何从tkinter向python脚本获取条目输入?,python,user-interface,tkinter,python-3.6,Python,User Interface,Tkinter,Python 3.6,几周前我开始用Python编程。我已经做了一个python程序,因此我现在用tkinter做一个gui。gui中的用户输入将由我已经编写的python程序处理。但是,当我运行我的程序并希望使用python程序中输入字段中的值时,它不会打印输入值。而是打印0,0 我得到了以下代码: 我得到了一个类,我用tkinter(gui_Pump.py)为我的gui制作了一个框架: 我得到了我的python程序,我想在其中处理输入值(pump.py) 从GUI导入* 将GUI_泵作为GuiP导入 D_MH_M
从GUI导入*
将GUI_泵作为GuiP导入
D_MH_MTR_SP_HLIM=1500.0
D_MH_MTR_SP_LLIM=0.0
def fc33_极限_实际值(最小值、英寸值、最大值):
如果IN=最大值:
输出=最大值
其他:
出=入
返回
p1_spd=GuiP.Pump1.p1_泵_spd1
p1泵spd=fc33极限值实值(D\U MH\U MTR\U SP\LLIM、p1\U spd、D\U MH\U MTR\U SP\HLIM)
但是如果我打印p1_泵p1_spd,无论我在输入字段中填写什么,我总是得到0,0。任何帮助都将不胜感激 您正在将用户输入分配给
GUI\u pump
模块中的全局变量p1\u pump\u spd1
,但正在从Pump1
类中的class属性p1\u pump\u spd1
中检索值。这两个变量彼此完全不相关。@jasonharper如何使这些变量相互关联?请看一看。@figbeam感谢您的建议。我已经让它工作了。
import GUI as Gui
from GUI import *
import pump as Pomp
class Pump1(tk.Frame):
p1_pump_spd1 = 0
d_p1_mtr_on = 0
def __init__(self, parent, controller):
tk.Frame.__init__(self, parent)
label = tk.Label(self, text='Test case')
label.place(x=380, y=10)
def validate(new_text):
if not new_text: # the field is being cleared
self.entered_number = 0
return True
try:
self.entered_number = int(new_text)
return True
except ValueError:
return False
def ok():
global p1_pump_spd1
p1_pump_spd1 = p1.get()
try:
p1_pump_spd1
except ValueError:
p1_pump_spd1 = 0
print(Pomp.p1_pump_spd)
vcmd = parent.register(validate)
p1 = tk.Entry(self, width=10, validate='key', validatecommand=(vcmd, '%P'))
btn_ok = tk.Button(self, text='ok', command=ok, width=2)
p1.place(x=230, y=20)
btn_ok.place(x=290, y=20)
from GUI import *
import GUI_Pump as GuiP
D_MH_MTR_SP_HLIM = 1500.0
D_MH_MTR_SP_LLIM = 0.0
def fc33_limit_real(MIN, IN, MAX):
if IN <= MIN:
OUT = MIN
elif IN >= MAX:
OUT = MAX
else:
OUT = IN
return OUT
p1_spd = GuiP.Pump1.p1_pump_spd1
p1_pump_spd = fc33_limit_real(D_MH_MTR_SP_LLIM, p1_spd, D_MH_MTR_SP_HLIM)