如何从python3.6中的tkinter中的条目小部件获取值

时间:2018-06-18 09:48:14

标签: python python-3.x tkinter tkinter-entry

我正在尝试从输入框中获取数据。我没有使用这些变量。当我尝试打印结果时,它显示空白。我尝试使用lambda但仍然没有工作。我是新来的。请告诉我我哪里错了。我在线试过,但它们是旧版本的解决方案。

def insertdata(E1):
       print(E1)


e1 = StringVar()

L1 = Label(F1, text ="Serial No:",anchor = E)
L1.grid(row = 0 ,column = 0)

E1  = Entry(F1,textvariable = e1)
E1.grid(row = 0 ,column = 2, sticky = N)
v1 = e1.get()
Button (F2,text = "Paid",command=lambda:insertdata(v1)).pack(side= TOP)

2 个答案:

答案 0 :(得分:1)

这是如何在entry窗口小部件中获取内容并进行打印。使用您发布的代码,您正在做很多错误的事情;您无法使用packgrid在同一窗口中放置窗口小部件。也永远不要这样做:Button (F2,text = "Paid",command=lambda:insertdata(v1)).pack(side= TOP),但始终将布局管理器放在下一行。

示例

b = Button (F2,text = "Paid",command=lambda:insertdata(v1))
b.pack(side= TOP)

完整代码

from tkinter import *


def insertdata():
    print(e1)
    print(E1.get())


root = Tk()    

L1 = Label( text="Serial No:", anchor=E)
L1.grid(row=0, column=0)

e1 = StringVar()
E1 = Entry( textvariable=e1)
E1.grid(row=0, column=2, sticky=N)

b = Button( text="Paid", command=insertdata)
b.grid(row=10, column=30)

root.mainloop()

答案 1 :(得分:0)

在将任何内容输入条目之前,您已将min_batch=rpdminsk value in which string cba# present i.e like 1000( from first sub_string) max_batch=rpdminsk value in which string cba# present i.e like 1003( from first sub_string) 设置为v1

我尝试了以下代码,它运行正常。

e1.get()