不要从python tkinter Entry获得任何值

时间:2016-03-14 07:28:53

标签: python tkinter toplevel tkinter-entry

我有以下内容:

//Override method ReadFromStreamAsync in custom xml formatter.
//Adding event handler for unknown elements.
var serializer = new XmlSerializer(type);
serializer.UnknownElement += Serializer_UnknownElement;
private static void Serializer_UnknownElement(object sender, XmlElementEventArgs e)
    { to find the unknown elements}

这只是一个例子,但仍未完整。我不明白,为什么我没有从fn.get()获得任何值。 点击“保存”按钮后,没有任何反应。

2 个答案:

答案 0 :(得分:2)

我是tkinter的新手,但也许你的函数是在python而不是运行时看到语句的时候调用的。我像这样使用lambda:

x = Button(a, text=c, command=lambda j=c: command(j))  

也许你可以根据自己的需要调整一下。

答案 1 :(得分:0)

我尝试为indb.foo(fn.get()定义一个单独的函数,并将函数名称指定为按钮的命令。您可以将其设置为try/except格式:

def fooget():
    from tkinter import messagebox
    # May need to set nonlocal variable for the Entry here and in addplayer
    try:
        indb.foo(fn.get())
    except:
        messagebox.showerror(message='No luck') # or words to that effect

如果您从命令行运行脚本,如果它不起作用,它可能会给您一个有用的错误消息。