首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Tkinter:刷新窗口(基于类),同时关闭另一个窗口

Tkinter是Python的一个标准GUI库,用于创建图形用户界面。它提供了丰富的组件和工具,可以用于开发各种类型的桌面应用程序。在Tkinter中,可以使用类来创建窗口,并通过刷新窗口和关闭另一个窗口来实现交互。

要刷新窗口,可以使用Tkinter中的update方法。该方法用于更新窗口的显示,使得任何未完成的绘制操作立即生效。可以在需要刷新窗口的地方调用update方法,例如在事件处理函数中或者循环中。

同时关闭另一个窗口,可以使用Tkinter中的destroy方法。该方法用于销毁窗口,并释放与之相关的资源。可以在需要关闭窗口的地方调用destroy方法,例如在点击关闭按钮时或者其他特定条件下。

下面是一个基于类的示例代码,演示了如何刷新窗口并同时关闭另一个窗口:

代码语言:txt
复制
import tkinter as tk

class MainWindow(tk.Tk):
    def __init__(self):
        super().__init__()
        self.title("Main Window")
        self.button = tk.Button(self, text="Open Sub Window", command=self.open_sub_window)
        self.button.pack()

    def open_sub_window(self):
        sub_window = SubWindow(self)
        self.update()  # 刷新主窗口

class SubWindow(tk.Toplevel):
    def __init__(self, master):
        super().__init__(master)
        self.title("Sub Window")
        self.label = tk.Label(self, text="Sub Window")
        self.label.pack()
        self.protocol("WM_DELETE_WINDOW", self.close_windows)  # 关闭窗口时调用close_windows方法

    def close_windows(self):
        self.master.destroy()  # 关闭主窗口

if __name__ == "__main__":
    main_window = MainWindow()
    main_window.mainloop()

在上述代码中,MainWindow类继承自Tkinter的Tk类,表示主窗口。在主窗口中,有一个按钮,点击按钮会打开一个子窗口。子窗口类SubWindow继承自Tkinter的Toplevel类,表示子窗口。子窗口中有一个标签用于显示文本。

在主窗口的open_sub_window方法中,创建了一个SubWindow实例,并调用update方法刷新主窗口。在子窗口的close_windows方法中,调用destroy方法关闭主窗口。

这样,当点击主窗口中的按钮时,会打开一个子窗口,并刷新主窗口。当关闭子窗口时,会同时关闭主窗口。

关于Tkinter的更多信息和使用方法,可以参考腾讯云的相关产品文档:Tkinter产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

python的tkinter编程(一)什么是tkinter,第一个基于tkinter的GUI编程,弹出窗口,创建按钮,并且在这个按钮上面加点击事件

这个tk编程需要有的东西 1 创建出一个窗口 2 在窗口上面布局组件 3 让各种各样的组件活起来,也就是让各个组件有事件 以上就是之后我们学的东西 tkinter 学习 tkinter就是python...,就先创建一个窗口吧 import tkinter as tk 在代码里面导入库,起一个别名,以后代码里面就用这个别名 root = tk.Tk() 这个库里面有Tk()这个方法,这个方法的作用就是创建一个窗口...root.mainloop() 加上以上的这句话,那么我们就可以看见窗口了 import tkinter as tk root = tk.Tk() root.mainloop() 执行以上的3句代码,我们就可以看见窗口...as tk from tkinter import messagebox root = tk.Tk() 创建窗口 btn01 = tk.Button(root) 创建按钮,并且将按钮放到窗口里面...只要执行以上的代码,那么我们就会看见这个界面 我们点击这个按钮,就会执行里面的 方法,那方法里面的动作是 弹出一个新的窗口 以上就是我们用tkinter编程做的一个小案列

2.7K20

软件测试|超好用超简单的Python GUI库——tkinter(二)

window.quit()关闭当前窗口window.update()刷新当前窗口window.mainloop()设置窗口主循环,使窗口循环显示(一直显示,指导窗口关闭)window.iconbitmap...() 刷新屏幕,否则返回值为1window.protocol("协议名",回调函数)启用协议处理机制,常用协议有 WN_DELETE_WINDOW,当用户点击关闭窗口时,窗口不会关闭,而是触发回调函数。...,必须先刷新一下屏幕window.update()print("窗口的分辨率是%dx%d"%(window.winfo_width(),window.winfo_height()))# 如使用该函数则窗口不能被拉伸...当 Tkinter 使用 WM_DELETE_WINDOW 协议与主窗口进行交互时,Tkinter窗口右上角x号的关闭功能失效,也就是无法通过点击x来关闭窗口,而是转变成调用用户自定义的函数。...,同时窗口距离左边屏幕的距离为 300(以像素为单位),距离屏幕顶部的距离为 200,这里我们将带“+”的参数值称为“位置参数”,当然,您也可以将它们设置为负数,如下所示:geometry('+-1500

2.5K30

Tkinter教程(每天半小时,3天彻底掌握Tkinter)day1

是什么 Tkinter的弊端 第一个Tkinter程序 插入ico 关闭python窗体 python窗体居中设置 护眼色_颜色名称_16进制色值_RGB色值 主窗体设置 窗口常用方法 python获取电脑屏幕的大小...python获取窗口的大小,必须先刷新一下屏幕 python设置窗体不能被拉伸 python背景颜色设置 python设置窗口处于顶层 python设置窗体透明度 ---- 教程环境 运行系统:win10...window.quit() 关闭当前窗口 window.update() 刷新当前窗口 window.mainloop() 设置窗口主循环,使窗口循环显示(一直显示,指导窗口关闭) window.iconbitmap...() 刷新屏幕,否则返回值为1 window.protocol("协议名",回调函数) 启用协议处理机制,常用协议有 WN_DELETE_WINDOW,当用户点击关闭窗口时,窗口不会关闭,而是触发回调函数...,必须先刷新一下屏幕 window.update() print("窗口的分辨率是%dx%d" % (window.winfo_width(), window.winfo_height())) 由于我没有设置窗口的分辨率

5.1K20

【记录】使用python图形库打开新窗口时候关闭之前的窗口,运行结束后关闭当前窗口和程序

代码图片展示 代码展示 import subprocess import sys # 导入sys模块 def open_buy_quantity(): # 运行购买数量.py文件 # 关闭当前窗口...库和 subprocess 模块来实现在 tkinter 窗口中打开另一个 Python 脚本的过程,并在脚本运行结束后关闭当前窗口和程序。...Tkinter 库: Tkinter 是 Python 的标准 GUI 库,用于创建用户界面。...在你的代码中,你使用了 Tkinter 创建了一个名为 window 的主窗口,并在 open_buy_quantity 函数中调用了 window.destroy() 方法来关闭当前窗口。...这是一个简单的 GUI 应用示例,展示了如何创建窗口关闭窗口。 subprocess 模块: subprocess 模块允许你在 Python 程序中启动新的进程。

10310

用python内置数据库sqite3和TK界面实现图书管理器

同时,通过合理的数据库操作和连接管理,确保了系统的稳定性和数据的完整性。...界面基于 `tkinter` 库实现,是一个基于 GUI 的图形用户界面程序。 界面结构分为两个部分,分别是添加图书和删除图书。...同时,代码在程序末尾添加了数据库连接的关闭操作,保证了程序执行结束时数据库连接得到正确关闭,确保了程序的稳定性和数据的完整性。 3TK界面设计 1....使用 `tkinter` 库创建一个根窗口 `root` ,并设置窗口的标题为 "图书管理器"。 2....创建一个框架 `search_frame` 并将其放置在根窗口中。 13. 使用 `tkinter.Label` 创建 "搜索图书标题:" 的标签,并使用 `grid()` 放置在相应的位置。

22810

python tkinter 设计指南

# 主窗口 root_window.title('C语言中文网:c.biancheng.net') # 窗口名字 root_window.mainloop() #开启主循环,让窗口处于显示状态 文字和关闭按钮...window.quit() 关闭当前窗口 window.update() 刷新当前窗口 window.mainloop() 设置窗口主循环,使窗口循环显示(一直显示,指导窗口关闭) window.iconbitmap...() 刷新屏幕,否则返回值为1 window.protocol("协议名",回调函数) 启用协议处理机制,常用协议有 WN_DELETE_WINDOW,当用户点击关闭窗口时,窗口不会关闭,而是触发回调函数...# 当 Tkinter 使用 WM_DELETE_WINDOW 协议与主窗口进行交互 # 则 Tkinter窗口右上角 x 号的关闭功能失效, # 也就是无法通过点击 x 来关闭窗口,转变成调用用户自定义的函数...X/Y/BOTH/NONE,表示允许控件在水平/垂直/同时在两个方向上进行拉伸,比如当 fill = X 时,控件会占满水平方向上的所有剩余的空间。

6.7K30

【Python100天学习笔记】Day10 图形用户界面和游戏开发

图形用户界面和游戏开发 基于tkinter模块的GUI GUI是图形用户界面的缩写,图形化的用户界面对使用过计算机的人来说应该都不陌生,在此也无需进行赘述。...Python默认的GUI开发模块是tkinter(在Python 3以前的版本中名为Tkinter),从这个名字就可以看出它是基于Tk的,Tk是一个工具包,最初是为Tcl设计的,后来被移植到很多其他的脚本语言中...基本上使用tkinter来开发GUI应用需要以下5个步骤: 导入tkinter模块中我们需要的东西。 创建一个顶层窗口对象并用它来承载整个GUI应用。 在顶层窗口对象上添加GUI组件。.../res/ball.png') # 在窗口上渲染图像 screen.blit(ball_image, (50, 50)) # 刷新当前窗口(渲染窗口将绘制的图像呈现出来)...如果要让上面代码中的小球动起来,可以将小球的位置用变量来表示,并在循环中修改小球的位置再刷新整个窗口即可。

2.5K20

Python Tkinter之初体验

所有开发一个图像化的小窗口,就是必要的。 对于稍有GUI编程经验的人来说,Python的Tkinter界面库是非常简单的。...import tkinter as tk # 创建一个主窗口,用于容纳整个GUI程序 root = tk.Tk() # 设置主窗口对象的标题栏 root.title("First Demo"...loop因为是循环的意思,root.mainloop就会让root不断的刷新,如果没有mainloop,就是一个静态的root,传入进去的值就不会有循环,mainloop就相当于一个很大的while循环...所有的窗口文件都必须有类似的mainloop函数,mainloop是窗口文件的关键的关键。 意思是一旦进入了主事件循环,就由Tkinter掌管一切了。现在不理解没关系,在后面的学习中你会有深刻的体会。...在面向对象的编程语言中,就是封装成

1.6K20

Python 图形化界面基础篇:打开和关闭窗口

在本文中,我们将深入研究如何使用 Python 的 Tkinter 库来打开和关闭窗口,并演示如何在应用程序中实现这些功能。...root = tk.Tk() root.title("打开和关闭窗口示例") 在上面的代码中,我们创建了一个 Tkinter 窗口对象 root ,并设置了窗口的标题为"打开和关闭窗口示例"。...步骤4:关闭窗口关闭窗口,我们可以使用 destroy() 方法来销毁窗口对象。这将关闭窗口并释放与之相关的资源。...步骤5:启动 Tkinter 主事件循环 最后一步是启动 Tkinter 的主事件循环,这将使窗口变得可交互,允许用户打开和关闭窗口。...创建了一个 Tkinter 窗口对象 root ,并设置了窗口的标题为"打开和关闭窗口示例"。

66660

过分了,别人用来做桌面应用开发,这家伙却用来撩妹(1)–上帝给你开一个窗口Tkinter

正文步骤实现 上帝给你开一个窗口Tkinter) 第一步:导入模块,无需安装 import tkinter 第二步:实现一个窗口 import tkinter tk=tkinter.Tk() tk.mainloop..., 545) # 最大尺寸 设置全屏模式: tk.attributes("-fullscreen", True)#全屏模式:True 全屏;False 正常显示 注:全屏模式没有退出按钮,关闭可使用win...+D最小化才能关闭 第五步:获取当前桌面的尺寸 有时候我们需要获取到当前屏幕的大小,来决定我们窗口的大小,那就需要获取当前屏幕的宽高,如何获取呢?...).grid(column=1,row=6)#把图片整合到标签中 完整代码 import tkinter from tkinter import * tk=tkinter.Tk() tk.title..._1.png")#file:t图片路径 imgLabel = tkinter.Label(tk,image=photo).grid(column=1,row=6)#把图片整合到标签中 tk.mainloop

1.6K60

过分了,别人用来做桌面应用开发,这家伙却用来撩妹(2)-上帝给你开了各种撩妹窗口Tkinter

来看源代码 import tkinter from tkinter import * tk=tkinter.Tk() def window(): tk.title("一个窗口") # 设置窗口名称...(file="Figure_1.jpg") tkinter.Label(tk, image=photo).grid(column=0, row=0) # 把图片整合到标签中 tk.mainloop...如果按照上面的运行,你就会发现,当你关闭一个之后,又有一个弹框弹出来,直到循环结束,就问你慌不慌,庆幸你只写了两个。 这时候,就需要用到多线程了。...具有这种能力的系统包括对称多处理机、多核心处理器以及芯片级多处理或同时多线程处理器。...,那我们继续来弹窗,说明需求: 需要弹出多个窗口 每隔多长时间就会自动弹出一个 关闭一个弹窗之后,依然不影响继续弹窗。

1.1K30
领券