x-Aaron 发表于 2020-3-30 21:36:00

easygui里的textbox()函数返回值

本帖最后由 x-Aaron 于 2020-3-30 21:54 编辑

easygui里的textbox()显示之后如果不改原来的内容,直接在后面添加,不能算作修改吗,怎么还能返回添加之前的内容呢
'显示用户打开的.txt文件的内容,OK之后可以保存'
import easygui as g

filepath = g.fileopenbox()
file = open(filepath, 'rt', encoding = 'utf8')
lst_txt = file.read()

str_lsttxt = ''.join(lst_txt)
str_txt = g.textbox(msg = filepath, text = str_lsttxt)#返回文本的内容,末尾会多一个空格
file.close()

str_txt = str_txt[:len(str_lsttxt)]#去掉最后一个空格

'如果修改,选择是否保存以及保存方式路径等'
if str_txt != str_lsttxt:
    result = g.buttonbox(msg = '检测到文件内容被修改,请选择一下操作', choices =
                ('覆盖保存', '放弃保存', '另存为...'))
    if result == '覆盖保存':
      file = open(filepath, 'wt', encoding = 'utf8')
      file.write(str_txt)
      file.close()
    elif result == '另存为...':
      file_save_path = g.filesavebox(default = '未命名.txt')
      file_new = open(file_save_path, 'wt', encoding = 'utf8')
      file_new.write(str_txt)
      file_new.close()
    elif result == '放弃保存':
      pass

圣狄雅哥 发表于 2021-6-22 10:36:34

莫名其妙
页: [1]
查看完整版本: easygui里的textbox()函数返回值