Tkinter如何将提交按钮关联新窗口并传递Entry输入到新窗口指定Label
Tkinter点击提交弹出子窗口并传递输入内容的实现方案
你只需要修改原有的提交回调函数,用tk.Toplevel创建依附主窗口的子窗口,把输入框内容赋值给子窗口内的Label即可,完整可运行代码如下:
import tkinter as tk # 修改提交按钮回调函数,实现创建子窗口+填充内容 def open_sub_window(widget): input_content = widget.get() # 创建依附主窗口的子窗口,使用Toplevel不要用Tk避免多窗口冲突 sub_window = tk.Toplevel(window) sub_window.title("输入内容展示") sub_window.geometry("300x100") # 子窗口内添加Label展示输入内容 show_label = tk.Label(sub_window, text=f"你输入的内容是:{input_content}", font=("微软雅黑", 12)) show_label.pack(pady=30) # 主窗口初始化 window = tk.Tk() window.title("Title_Name") window.geometry("250x250") # 组件定义 label = tk.Label(window, text = "Manual:", bg = "dark grey", fg = "white") entry = tk.Entry(window) # 显式指定父组件为window,避免潜在布局异常 button = tk.Button(text = "submit", command = lambda e = entry: open_sub_window(e)) # 组件布局 label.place(x=0,y=20) entry.place(x=52,y=21) button.place(x=177, y=18) window.mainloop()
如果需要避免多次点击提交重复创建子窗口,可以在回调函数开头加判断逻辑:先校验子窗口是否已存在,存在则直接更新已有子窗口的Label文本,不存在再新建窗口。
内容的提问来源于stack exchange,提问作者user16826661
相关产品推荐
相关产品推荐

