您当前的位置:首页 > 计算机 > 编程开发 > Python

Python+tkinter不允许退出程序的思路和实现

时间:12-26来源:作者:点击数:

思路:基于Python+tkiner的程序,在单机右上角X按钮关闭程序时,会触发'WM_DELETE_WINDOW'消息,如果可以截获这个消息并改变其行为,就可以禁止关闭程序。

具体实现和应用:在我开发的“课堂教学管理系统”中,因为有屏幕广播的功能,所以不允许学生关闭客户端,这样可以在最大程度上保证学生的学习效果(最起码不能在电脑上做学习之外的其他事情)。

def closeWindow():

    tkinter.messagebox.showerror(title='警告',\

                                 message='不许关闭,好好学习!')

    return

root.protocol('WM_DELETE_WINDOW', closeWindow)

上面的代码加入到学生端代码之后,单机右上角X按钮关闭系统时会被禁止,并弹出下面的窗口:

但是这样的实现有个缺陷,如果打开任务管理器然后结束Python进程的话,仍可以关闭程序,不过这可以通过守护进程来避免和解决,后面再单独行文进行介绍。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门