将 Tkinter 条目转换为变量
Transforming a Tkinter entry to variable
我无法获取入口值并使其成为我其余代码的可用变量,这部分只能创建一个变量 z,但它最终为空,这是我第四次尝试不同的方法没有好的结果。
entry.get()
return没什么,我需要它return一个字符串。
from Tkinter import *
class Application(Frame):
def __init__(self, master=None):
Frame.__init__(self,master)
self.grid()
self.initialize()
def initialize(self):
self.btn1 = Button(self, text = 'Ok', command=retrieve_input)
self.btn1.grid()
def retrieve_input():
print 'Input value => %s' %entry.get()
root = Tk()
root.title('Teste')
root.geometry('200x100')
entry = Entry(root)
entry.grid(column=0,row=0)
entry.focus()
entry.bind('<Return>', (lambda event: retrieve_input()))
z=entry.get()
app = Application(root)
root.mainloop()
您需要致电:
z = entry.get()
只要你希望z
成为entry
中所写的内容。如将 retrieve_input
替换为:
def retrieve_input():
global z
z = entry.get()
print 'Input value => %s' %z
例如。
如果你想添加一个变量,其名称与 entry
中所写的相同,你可以像下面的代码一样填充 variables
字典:
try: # In order to be able to import tkinter for
import tkinter as tk # either in python 2 or in python 3
except ImportError:
import Tkinter as tk
def add_variable():
global variables, entry
variables[entry.get()] = None
print(variables)
if __name__ == '__main__':
root = tk.Tk()
variables = dict()
entry = tk.Entry(root)
button = tk.Button(root, text="Add variable...", command=add_variable)
entry.pack()
button.pack()
root.mainloop()
我无法获取入口值并使其成为我其余代码的可用变量,这部分只能创建一个变量 z,但它最终为空,这是我第四次尝试不同的方法没有好的结果。
entry.get()
return没什么,我需要它return一个字符串。
from Tkinter import *
class Application(Frame):
def __init__(self, master=None):
Frame.__init__(self,master)
self.grid()
self.initialize()
def initialize(self):
self.btn1 = Button(self, text = 'Ok', command=retrieve_input)
self.btn1.grid()
def retrieve_input():
print 'Input value => %s' %entry.get()
root = Tk()
root.title('Teste')
root.geometry('200x100')
entry = Entry(root)
entry.grid(column=0,row=0)
entry.focus()
entry.bind('<Return>', (lambda event: retrieve_input()))
z=entry.get()
app = Application(root)
root.mainloop()
您需要致电:
z = entry.get()
只要你希望z
成为entry
中所写的内容。如将 retrieve_input
替换为:
def retrieve_input():
global z
z = entry.get()
print 'Input value => %s' %z
例如。
如果你想添加一个变量,其名称与 entry
中所写的相同,你可以像下面的代码一样填充 variables
字典:
try: # In order to be able to import tkinter for
import tkinter as tk # either in python 2 or in python 3
except ImportError:
import Tkinter as tk
def add_variable():
global variables, entry
variables[entry.get()] = None
print(variables)
if __name__ == '__main__':
root = tk.Tk()
variables = dict()
entry = tk.Entry(root)
button = tk.Button(root, text="Add variable...", command=add_variable)
entry.pack()
button.pack()
root.mainloop()