猿问

从第二个 tkinter 窗口获取数据

我想打开一个顶层窗口然后关闭它,但要获取输入:

def popupDeadline():
    newWindow = Toplevel()
    newWindow.geometry("290x100+300+300")
    newWindow.configure(bg='#ffffff')   
    newWindow.resizable(height=False, width=False)
    labelFrame = Label(newWindow, text="Enter Deadline (YYYY-MM-DD)")
    labelFrame.place(x=50, y=10)
    labelFrame.configure(bg='#ffffff') 
    deadlined=StringVar()
    d1=Entry(newWindow,textvariable=deadlined)
    d1.config(width=40)
    d1.place(x=50, y=30, width=200, height=20)
    btn = Button(newWindow, text="Enter", command=save_quit) 
    btn.place(x=50, y=50, width=100, height=20)

和:

def save_quit():
    deadline = deadlined.get()

这不起作用,因为未定义截止日期。我怎样才能做到这一点?就像我说的,这个想法是为输入打开一个弹出窗口,然后关闭它但保留输入。


慕尼黑5688855
浏览 111回答 2
2回答

一只甜甜圈

您的问题的答案很简单,如下所示:第 1 步。将值存储Entry在变量中,例如:-variable_name = entry_name.get()Step 2. 把上面的代码放在一个点击按钮时可以触发的函数中def function_name():     global variable_name     variable_name = entry_name.get()但是这里有一个变化:将全局分配给用于存储内容的变量(不仅在函数内部,而且在远离声明的函数外部Toplevel())如果这也不起作用,请告诉我错误是什么。

繁花不似锦

这里的问题是你的变量deadlined是一个局部变量,这意味着它在你的函数内部可用。为了在其他函数中使用它,您必须说global deadlined现在可以在范围内访问该变量global。def popupDeadline():     global deadlined ....
随时随地看视频慕课网APP

相关分类

Python
我要回答