python中Tkinter做记事本退出的设计

本文介绍了一个简单的Python脚本,用于检测文本编辑器中的内容变化。通过使用Tkinter创建GUI,并借助MD5哈希来比较文本前后差异,实现了在内容发生变化时提示用户保存的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#!/usr/bin/python
#coding: utf-8

'''
代码解析:用于退出编辑框的时候,如果要退出,则检查内容是否改变,如果改变,弹出选项框,
选择是否保存,如果要保存的话,则把内容进行保存以后再退出。不需要保存就直接退出
如果没有改变的话则直接退出即可。

还有就是,当每一次执行保存以后,都要让 contents = text.get("1.0", END) 执行一次,获取
最新的当前的文本是什么,用于下一次退出的时候进行判断是否需要再进行保存
'''

from Tkinter import *
import hashlib

root = Tk()

text = Text(root)
text.pack(expand = YES, fill = BOTH)

contents = text.get("1.0", END)

def getsig(contents):
    # 获取二进制文件
    m = hashlib.md5(contents.encode())
    # 获取摘要
    return m.digest()

sig = getsig(contents)

def check():
    ontents = text.get("1.0", END)
    if sig != getsig(ontents):
        print("内容发生改变")
    else:
        print("直接退出")

Button(root, text = "检查", command = check).pack()

root.mainloop()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值