保留Python Tkinter中的输入字段

时间:2018-08-04 10:24:17

标签: python tkinter

我在GUI中有一个弹出的文本输入字段,要求输入两个条目#1文件路径#2项(这些参考一个Excel工作表)

文件路径很少更改,但仍需要在需要时进行更改的功能

是否可以将文件路径保留在输入字段中,因此不必每次都键入?也就是说,在关闭并重新打开后,输入字段仍包含C:\*\*\*\*\*\somthing.xlsx

master = Tk()
master.title("Entry Field")
Label(master, text="Filepath: ").grid(row=0)
Label(master, text="Item Number: ").grid(row=1)
e1 = Entry(master)
e2 = Entry(master)
e1.grid(row=0, column=1)
e2.grid(row=1, column=1)

def entry_field():
    print("Filepath: %s" % (e1.get()))
    print("Item No: %s" % (e2.get()))

    Button(master, 
           text = 'Accept', 
           command = entry_field).grid(row=3, column=1, sticky=W, pady=4)

    root.mainloop()

1 个答案:

答案 0 :(得分:0)

tk.Entry小部件将保留这些值,直到您将它们重置为新值为止(多次按下Accept按钮而无需修改Entry时可以看到此值;因此,您不需要做任何特别的事情。

您可以在输入中主动插入默认值:

import tkinter as tk

def entry_field():
    print("Filepath: %s" % (e1.get()))
    print("Item No: %s" % (e2.get()))

master = tk.Tk()
master.title("Entry Field")
tk.Label(master, text="Filepath: ").grid(row=0)
tk.Label(master, text="Item Number: ").grid(row=1)


e1 = tk.Entry(master)
e2 = tk.Entry(master)
e1.insert(0, 'C:*****\somthing.xlsx')    # <-- this string will be inserted in the Entry by default

e1.grid(row=0, column=1)
e2.grid(row=1, column=1)

tk.Button(master, text = 'Accept', command = entry_field).grid(row=3, column=1,
                                sticky=tk.W, pady=4)
master.mainloop()

现在默认情况下,条目的显示方式如下:

enter image description here