获取全局范围内按钮调用的函数的返回值

时间:2019-07-17 16:32:10

标签: python-3.x tkinter

我想获取按下按钮时调用的函数的返回值,但总是得到None

import tkinter as tk

def impl(root):
    def getvalues():
        global A
        A=[entry.get() for entry in entries]
        return A

    #create a scrolled frame
    scframe=tk.Frame(root)
    scframe.pack(fill='both', expand=True)

    entries=[]

    tk.Label(scframe,text="value1").grid(row=0, sticky='w')
    entry_1=tk.Entry(scframe)
    entry_1.grid(row=0, column=1)

    tk.Label(scframe,text="value2").grid(row=1, sticky='w')
    entry_2=tk.Entry(scframe)
    entry_2.grid(row=1, column=1)

    entries=[entry_1, entry_2]

    button_recover=tk.Button(scframe, text="Registered Values", fg="red", command=getvalues)

    root.mainloop()

    return A

(我将代码放入函数“ impl”(与其他函数一起位于特定脚本中,因为我想在其他脚本中调用它))。

我执行了以下指示:

root1=tk.Tk() 
values=impl(root1)

,我想让用户在“值”列表中输入两个值。但是通过打印“值”,输出始终为“无”。

0 个答案:

没有答案