You need to enable JavaScript to run this app. Tkinter Entry组件输入内容无法打印,是什么原因如何解决?
优惠活动
大模型
产品
解决方案
定价
更多

Tkinter Entry组件输入内容无法打印,是什么原因如何解决?

问题原因

你代码的问题出在按钮绑定回调函数的写法上:

  • 你写的command=pri()会在程序初始化创建按钮的时候立即执行一次pri()函数,执行后的返回值(该函数无返回值,实际返回的是None)会被绑定给command参数,所以后续点击按钮时没有可执行的逻辑,自然没有效果。
  • 正确写法是只传函数名,不需要加括号,也就是command=pri,这样是把函数本身绑定给点击事件,点击按钮的时候才会触发函数执行。
修正后的代码
import tkinter as tk

root = tk.Tk()

userInput1 = tk.StringVar()
userInput2 = tk.StringVar()


def pri():
    first = userInput1.get()
    print(first)


canvas = tk.Canvas(root, height=600, width=400, bg='grey',)
canvas.pack()

entry1 = tk.Entry(root, textvariable=userInput1)
entry1.pack()

entry2 = tk.Entry(root, textvariable=userInput2)
entry2.pack()

# 仅修改此处,去掉pri后的括号即可
button = tk.Button(root, text='Create Directory', fg='white', bg='green', command=pri)
button.pack()


root.mainloop()

内容的提问来源于stack exchange,提问作者Der Kommentar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.16 05:27:03