You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过按钮调用Tkinter生成彼此独立的新GUI窗口?

解决Tkinter点击按钮生成多个独立新窗口的问题

你的代码里存在一个明显错误:testt()函数里的root()是无效调用,root已经是Tk()创建的主窗口实例,不能直接当作函数来调用。要实现点击按钮生成独立新窗口的效果,应该用Tkinter的Toplevel组件,它专门用来创建独立于主窗口的子窗口,每个子窗口都可以单独操作,不会互相影响。

修正后的完整代码如下:

import tkinter as tk

root = tk.Tk()
root.title("主窗口")

def create_new_window():
    # 生成新的独立窗口
    new_window = tk.Toplevel(root)
    new_window.title("新窗口")
    # 给新窗口添加示例内容
    tk.Label(new_window, text="这是一个独立的新窗口").pack(padx=30, pady=30)

# 创建触发按钮
tk.Button(root, text='window +', command=create_new_window).pack(padx=50, pady=25)

root.mainloop()

关键说明:

  • Toplevel是Tkinter中用于创建子窗口的组件,每次调用tk.Toplevel()都会生成一个全新的独立窗口。
  • 每个新窗口都可以设置自己的标题、添加专属组件,关闭单个子窗口不会影响主窗口和其他子窗口。
  • 原代码中直接调用root()的写法完全错误,因为root是已经实例化的对象,不是构造函数,不能重复调用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 13:55:23