python tk隐藏窗口_显示tkinter消息框时,隐藏root窗口

有的时候我们在做GUI程序的时候,需要在显示消息框时,隐藏主窗口,即root窗口。默认情况,tkinter会自动创建一个root窗口出来,看着有点讨厌。

比如:

from tkinter import messagebox as msgbox

msgbox.showinfo('i\'m showinfo','Now you are at www.pynote.net! Welcome...:)')

执行时,是这样的:

默认出现了root窗口

因此,我们需要修改一下代码:

import tkinter as tk

from tkinter import messagebox as msgbox

root = tk.Tk()

root.withdraw()

rv= msgbox.showinfo('i\'m showinfo','Now you are at www.pynote.net! Welcome...:)')

print(rv)

root.wm_deiconify()

root.mainloop()

这样就OK了,程序首先主动创建root,并调用root.withdraw,然后显示msgbox,并阻塞,msgbox的返回值也能够被直接获取。然后重新画出root窗口,最后进入mainloop。

其实,root.wm_deiconify和root.mainloop可以不需要,这样就可以编写console程序,并且配合msgbox的交互。

-- EOF --

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值