python实现文本编辑器_Python-tkinter实现简单的文本编辑器
Python-tkinter實現簡單的文本編輯器
利用tkinter實現簡單的文本編輯器。創建一個簡單的文本編輯器。可以用讀文件的方式在一個文本域里顯示一些文字供用戶編輯。
當用戶退出程序時(通過 QUIT 按鈕)會詢問用戶是否保存所作的修改。
(直接上代碼~有注釋~)
1 #-*- encoding: utf-8 -*-
2 '''
3 @File : 簡單文本編輯器.py4 @Time : 2020/04/05 11:35:395 @Author : Konggu6 @Desc : None7 '''
8 importos9 importtkinter as tk10 importtkinter.messagebox11 from functools importpartial as pto12 from tkinter importfiledialog, dialog13
14 path = r'F:\Python\網絡通信編程技術(2020-3-5)\第五周作業\\'
15 file_text = ''
16 window =tk.Tk()17 window.title('啊嘞嘞?') #窗口標題
18 window.geometry('500x300') #窗口尺寸
19 t1 = tk.Text(window, width=50, height=10, bg='palegreen', font=(12))20 t1.pack()21
22 #打開文件
23 defopen_file():24 file_path = filedialog.askopenfilename(title=u'選擇文件', initialdir=(os.path.expanduser(path))) #文件選擇框(選擇文件)
25 with open(file=file_path, mode='r+', encoding='utf-8') as f:26 file_text = f.read() #讀文件
27 t1.insert('insert', file_text)28
29 #保存文件
30 defsave():31 file_path = path + '文件.txt' #指定一個路徑
32 file_text = t1.get('1.0', tk.END)33 if file_path is notNone:34 with open(file=file_path, mode='w', encoding='utf-8') as f: #保存到指定路徑
35 f.write(file_text)36 t1.delete('1.0', tk.END)37 print("保存成功")38 tkinter.messagebox.showinfo(title='提示',message='保存成功!')39
40 #退出
41 defquit():42 res = tk.messagebox.askokcancel(title = '等一下!',message='保存一手嗎?') #彈出框,可選(確定/取消)
43 print(res)44 ifres:45 save()46 window.quit()47 else:48 pass
49
50 defmain():51 bt1 = tk.Button(window, text='打開文件', width=15, height=2, command=open_file)52 bt1.pack()53 bt2 = tk.Button(window, text='退出', width=15, height=2, command=quit)54 bt2.pack()55 window.mainloop()56
57
58 if __name__ == "__main__":59 main()
最后的效果:
單擊 “打開文件” :
“文件.txt” 里的內容:
選擇 “文件.txt” 打開,效果:
可以在上面的文本框里進行編輯:
當單擊 “退出” 時,彈出 “是否保存文件” 的對話框:
單擊確定即可在原文件保存:
然后我們看到,“文件.txt” 里的內容已經改變:
(如果有錯誤,歡迎指正!謝謝!)
總結
以上是生活随笔為你收集整理的python实现文本编辑器_Python-tkinter实现简单的文本编辑器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python3中如何使用pprint打印
- 下一篇: websocket python爬虫_p