【问题标题】:Using tkinter for making gui in python使用 tkinter 在 python 中制作 gui
【发布时间】:2017-04-14 13:46:10
【问题描述】:

我正在尝试为一个基本的 dbms 项目制作一个 gui,虽然 tkinter 在大多数情况下看起来很容易,但我无法了解如何使用 Entry 实际获取输入并将其存储以供以后使用(如 if 条件什么的)例如:

root = Tk()
label = Label(root,text="Testing")
label.grid(row=0)
entry = Entry(root)
entry.grid(row=0,column=1)

现在我想做的是使用我刚刚在输入字段中写的值/单词说只是在控制台上打印出来。

我以为我们可以写

print(entry)

但这只是在控制台上打印一些随机小数,理想情况下 id 喜欢将值存储在某个变量中(如果它不能只使用“条目”),所以我也可以在 if 条件等中使用它

我正在使用 python 3

【问题讨论】:

  • 您是否阅读过关于 Entry 小部件的文档?检索数据的方法已记录在案。

标签: python database user-interface tkinter


【解决方案1】:

您的意思是要在条目中显示一些数据?

你可以这样做:

v = StringVar()
e = Entry(master, textvariable=v)
e.pack()

v.set("a default value")
s = e.get()

您可以只设置“v”的值,例如条目显示“默认值”字符串。并且可以使用“get”方法获取值。

【讨论】:

  • 我正在尝试通过使用它来组合它,以便我按下一个按钮并打印它,所以我添加了 s=v.get() button=Button(text="enter",command=print (s)) button.grid(row=1) 但没有打印任何东西
  • button=Button(text="enter",command=print_fun),在 print_fun 中调用 print s
  • @hankyman 我知道它的琐碎,但我不知道如何做到这一点,该函数不能有任何参数,因为 command= 的东西没有带括号的函数名,因为我不能做 print_fun(s ): print(s) button=Button(text="enter",command=print_fun) 那我该怎么写呢?
  • func = (lambda x = s : print(x)) button=Button(text="enter",command=func) 您只需将参数传递给 func
【解决方案2】:

您必须检索该值:

s=entry.get()
print(s)

【讨论】:

    【解决方案3】:

    通过打印entry,您打印的不是条目中的内容,而是实际条目本身。您需要使用entry.get() 来抓取条目的内容。

    print(entry.get())
    

    【讨论】:

      猜你喜欢
      • 2021-03-27
      • 2021-11-23
      • 2016-03-18
      • 2016-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多