精华内容
下载资源
问答
  • 展开全部采用的是main函数对主窗口运行程序完毕自动关闭的命令:from tkinter import *def main():root = Tk()b = Button(root, text='退出', command=root.quit)b.pack()mainloop()if __name__ == '__main__':main...

    展开全部

    采用的是main函数对主窗口运行程序完毕自动关闭的命令:

    from tkinter import *def main():

    root = Tk()

    b = Button(root, text='退出', command=root.quit)

    b.pack()

    mainloop()if __name__ == '__main__':

    main()

    扩展资料:32313133353236313431303231363533e59b9ee7ad9431333431376533

    main函数的应用:

    程序执行的起点,main是相对来说的,如同音学理论之主调于泛音,泛音即程序中的除main之外的其他函数,迎合思考方式而生成的而非必定的模式。有主有次,执行起来条清缕析,既可将程序模块化又实现了一个闭合的整体。

    模块化程序设计方法是把整个程序划分为若干功能较为单一的程序模块,然后分别予以实现,最后再把所有的程序模块像搭积木一样装配起来。

    利用函数可以实现程序的模块化,可以大大地减轻编码工作量。在函数内部或复合语句块内部定义的 auto 类型变量称为局部变量。

    局部变量的作用域从该局部变量定义的位置开始到本函数或复合语句结束处。局部变量的生存期较短暂。当局部变量所在的函数被调用时,局部变量内存空间被分配,函数调用结束后,局部变量内存空间被释放。

    函数的形参和实参均属于局部变量,调用函数时,形参内存空间被分配。函数调用结束后,形参内存空间被释放。C语言函数参数传递可分为三种情况:简单变量作为函数参数、数组名作为函数参数以及指针作为函数参数。

    展开全文
  • 我试图用Tkinter制作一个简单的GUI,它使用Matplotlib生成大量绘图并将它们...关闭(),GUI窗口不再关闭,但毫不奇怪,内存很快就会被填满,直到整个程序崩溃。在而不是plt.关闭(),我尝试使用plt.clf公司(),plt.gc...

    我试图用Tkinter制作一个简单的GUI,它使用Matplotlib生成大量绘图并将它们保存到硬盘上。在

    附件是一个简单的代码,但是在保存了所有绘图之后,Tkinter GUI关闭,脚本停止。我想这个问题可能与plt.关闭(),因为当我删除plt.关闭(),GUI窗口不再关闭,但毫不奇怪,内存很快就会被填满,直到整个程序崩溃。在

    而不是plt.关闭(),我尝试使用plt.clf公司(),plt.gcf公司().clear(),图清除()他们都没用。它们使GUI窗口保持不变,但会导致内存问题。在

    有人知道为什么吗plt.关闭()关闭Tkinter GUI窗口,如何阻止它?我需要图形用户界面(GUI)留下来,并在我处理完对象后,将它们从内存中删除。在

    我使用的是Python3.6.3rc1、windows7、Tkinter 8.6和matplotlib3.0.2。在from tkinter import *

    import matplotlib.pyplot as plt

    import os

    def make_plot():

    x = [1, 2, 3, 4, 5]

    y = [1, 2, 3, 4, 5]

    for j in range(0,20):

    fig = plt.figure(num=None, figsize=(20, 10), dpi=200, facecolor='w', edgecolor='w')

    plt.plot(x,y)

    plt.xlabel("x")

    plt.ylabel("y")

    out_name = os.getcwd()+ "\\" + str(j)+".png"

    print(out_name)

    plt.savefig(out_name)

    plt.close()

    class Application(Frame):

    def run_make_plot(self):

    make_plot()

    def createWidgets(self):

    self.button = Button(self)

    self.button["text"] = "Plot"

    self.button["command"] = self.run_make_plot

    self.button.pack()

    def __init__(self, master=None):

    Frame.__init__(self, master)

    self.pack()

    self.createWidgets()

    root = Tk()

    app = Application(master=root)

    app.mainloop()

    root.destroy()

    展开全文
  • 本文介绍定时自动关闭tkinter的root窗口的技术细节。tkinter模块的root窗口和Toplevel窗口...不过,关闭root窗口的代码不能够在其它线程中执行,这样可以关闭窗口,但是程序无法正常退出。比如下面这段代码:import...

    一般GUI的程序的关闭,都是使用者用鼠标去点击窗口右上角的那个X,不过我们也可以让窗口自动关闭。本文介绍定时自动关闭tkinter的root窗口的技术细节。

    tkinter模块的root窗口和Toplevel窗口,都有destroy函数,调用此函数可以起到销毁窗口关闭程序的效果。不过,关闭root窗口的代码不能够在其它线程中执行,这样可以关闭窗口,但是程序无法正常退出。

    比如下面这段代码:

    import tkinter as tk

    import multiprocessing

    import threading

    import time

    import os

    import sys

    import signal

    def killself():

    print('I am ready to die!')

    time.sleep(3)

    root.destroy()

    print('123123123')

    root = tk.Tk()

    th = threading.Thread(target=killself, args=())

    th.start()

    root.mainloop()

    这段代码在线程中调用root.destroy()函数,试图自动关闭整个程序,但是不能成功。代码执行root.destroy后就不动了,不能退出到shell,最后的print也打不出来。问题就是,在一个独立的线程中调用root.destroy。

    修正这段代码有两个方法,一是不要在线程中调用root.destroy,直接调用os._exit函数,不过这个方法有点ugly。二是使用after定时器。

    import tkinter as tk

    root = tk.Tk()

    root.after(3000, root.destroy)

    root.mainloop()

    使用after就看起来好多了,代码一下子清爽了不少。我们也可以在独立线程中设置after,在after对应的函数中执行root.destroy。

    -- EOF --

    展开全文
  • 当我的机器运行时,我想向用户显示一个顶层窗口,其中包含一些信息,这些信息应在功能完成后自行关闭.这是我的最小示例:from Tkinter import *import timedef button_1():window = Toplevel()window.title("info")msg ...

    我正在使用Tkinter作为GUI使用python编程一些驱动器.当我的机器运行时,我想向用户显示一个顶层窗口,其中包含一些信息,这些信息应在功能完成后自行关闭.这是我的最小示例:

    from Tkinter import *

    import time

    def button_1():

    window = Toplevel()

    window.title("info")

    msg = Message(window, text='running...', width=200)

    msg.pack()

    time.sleep(5.0)

    window.destroy()

    master = Tk()

    frame = Frame(width=500,height=300)

    frame.grid()

    button_one = Button(frame, text ="Button 1", command = button_1)

    button_one.grid(row = 0, column = 0, sticky = W + E)

    mainloop()

    主要问题是,仅在5秒钟后出现顶级窗口.有什么建议么?

    谢谢!

    解决方法:

    time.sleep(5)是在GUI有时间更新之前启动的,这就是为什么仅在5秒结束后才显示顶层的原因.要解决此问题,您可以在time.sleep(5)之前添加window.update_idletasks()以强制更新显示.

    但是,正如布莱恩·奥克利(Bryan Oakley)在其答案中指出的那样,GUI在执行time.sleep(5)时被冻结.我想您的最终目标不是执行time.sleep,而是执行一些耗时的操作.因此,如果您不希望冻结GUI但不知道执行将花费多长时间,则可以在单独的线程中执行函数,并定期使用以下命令检查函数是否完成:

    import Tkinter as tk

    import time

    import multiprocessing

    def function():

    time.sleep(5)

    def button_1():

    window = tk.Toplevel(master)

    window.title("info")

    msg = tk.Message(window, text='running...', width=200)

    msg.pack()

    thread = multiprocessing.Process(target=function)

    thread.start()

    window.after(1000, check_if_running, thread, window)

    def check_if_running(thread, window):

    """Check every second if the function is finished."""

    if thread.is_alive():

    window.after(1000, check_if_running, thread, window)

    else:

    window.destroy()

    master = tk.Tk()

    frame = tk.Frame(width=500,height=300)

    frame.grid()

    button_one = tk.Button(frame, text ="Launch", command=button_1)

    button_one.grid(row = 0, column = 0, sticky = "we")

    master.mainloop()

    标签:tkinter,toplevel,python

    来源: https://codeday.me/bug/20191110/2014933.html

    展开全文
  • 窗口中写了一个按钮调用一个函数,打开一个新的窗口 ``` def ask_wifi(self): inputDialog =getWifi.MyDialog() self.wait_window(inputDialog) return inputDialog.wifi ``` 新的窗口中需要点击选择并...
  • 采用的是main函数对主窗口运行程序完毕自动关闭的命令:from tkinter import *def main():root = Tk()b = Button(root, text='退出', command=root.quit)b.pack()mainloop()if __name__ == '__main__':main()扩展...
  • Python定义点击tkinter的右上角关闭按钮触发事件,再调用其它函数来结束进程等。 import tkinter import tkinter.messagebox import sys def JieShu(): tkinter.messagebox.showwarning(title='警告', message='...
  • tkinter想要获得控件回调函数的返回值,用了global变量,但必须关闭窗口,可以不关窗口继续在窗口中使用吗? ``` import tkinter as tk from tkinter import ttk root = tk.Tk() def Tj_go(*args): ...
  • 代码如下 from tkinter import * ...#定义了一个函数,当关闭window窗口时将会弹出一个消息框 def closewindow(): messagebox.showinfo(title="警告!",message="好好作答,不要敷衍!") return def cl...
  •  # 查询完毕后必须关闭连接  self.conn.close()  return data    def ExecNonQuery(self, sql): # 执行非查询语句  cur = self.__GetConnect()  cur.execute(sql)  self.conn.commit() ...
  • 我创建了按钮添加命令来执行一些功能,但如何使,点击按钮后,函数执行窗口就会关闭。在def Top(self):self.string1=StringVar() ###self.string2=StringVar()self.string3=StringVar() ###self.Top=Toplevel()self....
  • 在只需使用:import tkinter as tk这将帮助您避免重写其他库导入的任何内容,或者避免其他导入覆盖tkinter函数。在你有一个非常非正统的方法来创建你的tkinter应用程序,但如果你想保持一切原样,你需要改变的是:...
  • 使用NewWin.protocol(“WM_DELETE_WINDOW”,quit_win)将函数quit_win分配给关闭按钮.import tkinter as tkroot = tk.Tk()root.title('Main Window')root.geometry('400x400')def get_new_win():NewWin = tk.Toplevel...
  • mainloop()在这种情况下,我的程序被阻止,直到我关闭窗口。如前所述,我尝试在另一个线程中启动进度条,但目前没有成功import timeimport ProgressBarprint("start")print("sleep 5 seconds")pb = ProgressBar.ProgBar...
  • Python tkinter - 第五章 按钮控件(Button)属性

    万次阅读 多人点赞 2019-09-07 08:02:09
    第5章 按钮控件(Button) 5.1 按钮控件介绍 按钮是一个标准的tkinter控件。按钮上可以显示文字或者图片...比如,关闭窗口、执行命令等。 import tkinter as tk root=tk.Tk() root.geometry('300x240') b1 = tk.But...
  • 2.想要在第三级得到第二级页面的窗口值,把第二级的窗口获得(在一个新的窗口页面把这个窗口关闭) 原因分析: 我们无法将tkinter里面的第二级(第二个函数)里面的形式参数传递给第三个(第二个)用,也就是不能把...
  • 一个事件提醒的小工具(python + tkinter) 本人在工作中每天下班时需要进行签退...点击"x"按钮可以关闭窗口,之后每隔十分钟弹出提醒一次 点击"退出"可彻底退出程序 下面为代码 """ warning函数: dt中设置每天要提...
  • tkinter写的主页面 并且在主页面中用按钮实现了调用游戏界面并且关闭主页面的方法,现在需要一个返回按钮 返回tk的主页面 我现在点按钮可以返回但是无法关闭当前的pygame的窗口 求助各位大神 import ...
  • (以前用tkinter时遇到这个问题,是使用一个boolean值来做开关,如果对象已创建,就不新建,否则新建,然后关闭窗口时在控制该boolean,该方法可行但是比较麻烦) 分析:有两种方法: 1.新建窗口时使用exec_()函数...
  • 例如可以使用python设计一个窗口,现在小编将使用tkinter为大家演示创建一个小窗口,设置了2个按钮,一个是btn关闭窗口,另一个是btn用于切换执行传入的2个函数,都是简单的小代码,供大家参考学习。对于刚刚接触...
  • 用python编表白程序的方法:1、创建GUI窗口,实现代码的调用。2、编写点击触发函数,实现表白程序。具体代码如下:from tkinter import * from tkinter import messagebox def closeWindow(): messagebox.showinfo...
  • 例如可以使用python设计一个窗口,现在小编将使用tkinter为大家演示创建一个小窗口,设置了2个按钮,一个是btn关闭窗口,另一个是btn用于切换执行传入的2个函数,都是简单的小代码,供大家参考学习。对于刚刚接触...
  • 例如可以使用python设计一个窗口,现在小编将使用tkinter为大家演示创建一个小窗口,设置了2个按钮,一个是btn关闭窗口,另一个是btn用于切换执行传入的2个函数,都是简单的小代码,供大家参考学习。对于刚刚接触...
  • 是的,通过注册一个函数(我称之为on_close,但您可以选择任何函数名)来拦截窗口关闭事件,从而避免这种情况。在一个棘手的问题是protocol是Tk类的一个方法。在非turtle tkinter用法中,您可以自己创建Tk对象作为顶层...
  • 即测试中可以打开界面显示实时参数信息,也可以关闭窗口,同时执行测试任务。 分两部分介绍: 第一部分为tkinter编写的界面 第二部分为调用DEMO,其中包含测试任务 第一部分: import tkinter as tk import time ...
  • 在在您的例子中,您可以使用Toplevel创建一个对话框,并用您想要的任何小部件填充它,然后使用wait_window函数等待该窗口被销毁。为了使它成为模态,你可以在顶层创建一个“抓取”。为了简单起见,我在下面的示例中...
  • 1、创建GUI窗口,实现代码的调用。 2、编写点击触发函数,实现表白程序。 具体代码如下: from tkinter import * from tkinter import messagebox def closeWindow(): messagebox.showinfo(title=警告,message=...
  • 用python编表白程序的方法:1、...具体代码如下:from tkinter import *from tkinter import messageboxdef closeWindow():messagebox.showinfo(title="警告",message="不许关闭,好好回答")# messagebox.showerro...

空空如也

空空如也

1 2 3
收藏数 42
精华内容 16
关键字:

tkinter关闭窗口函数