鱼C论坛

 找回密码
 立即注册
查看: 19|回复: 1

[作品展示] txt阅读编辑器

[复制链接]
发表于 1 小时前 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
Python3做的txt阅读编辑器,出现错误有弹窗提醒。顺利打开后可以选择打开任何txt、保存以及更改字体和字号。有问题可回复。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 1 小时前 | 显示全部楼层
做得不错!用Python3和tkinter可以轻松实现一个txt阅读编辑器。下面是一个基础示例,包含错误弹窗、打开保存文件、更改字体字号功能。有什么问题可以继续交流。


  1. import tkinter as tk
  2. from tkinter import filedialog, messagebox, font

  3. def open_file():
  4.     try:
  5.         filepath = filedialog.askopenfilename(filetypes=[("Text files", "*.txt")])
  6.         if not filepath:
  7.             return
  8.         with open(filepath, 'r', encoding='utf-8') as f:
  9.             content = f.read()
  10.         text.delete('1.0', tk.END)
  11.         text.insert('1.0', content)
  12.     except Exception as e:
  13.         messagebox.showerror("错误", str(e))

  14. def save_file():
  15.     try:
  16.         filepath = filedialog.asksaveasfilename(defaultextension=".txt", filetypes=[("Text files", "*.txt")])
  17.         if not filepath:
  18.             return
  19.         with open(filepath, 'w', encoding='utf-8') as f:
  20.             f.write(text.get('1.0', tk.END))
  21.         messagebox.showinfo("成功", "文件已保存")
  22.     except Exception as e:
  23.         messagebox.showerror("错误", str(e))

  24. def change_font():
  25.     font_name = font_entry.get()
  26.     font_size = int(size_entry.get()) if size_entry.get().isdigit() else 12
  27.     text.config(font=(font_name, font_size))

  28. root = tk.Tk()
  29. root.title("简单TXT阅读器")

  30. text = tk.Text(root, wrap='word')
  31. text.pack(fill='both', expand=True)

  32. # 菜单栏
  33. menu = tk.Menu(root)
  34. root.config(menu=menu)
  35. file_menu = tk.Menu(menu, tearoff=0)
  36. menu.add_cascade(label="文件", menu=file_menu)
  37. file_menu.add_command(label="打开", command=open_file)
  38. file_menu.add_command(label="保存", command=save_file)
  39. file_menu.add_separator()
  40. file_menu.add_command(label="退出", command=root.quit)

  41. # 字体设置区域
  42. font_frame = tk.Frame(root)
  43. font_frame.pack(pady=5)
  44. tk.Label(font_frame, text="字体:").pack(side='left')
  45. font_entry = tk.Entry(font_frame)
  46. font_entry.insert(0, "TkDefaultFont")
  47. font_entry.pack(side='left', padx=5)
  48. tk.Label(font_frame, text="字号:").pack(side='left')
  49. size_entry = tk.Entry(font_frame, width=5)
  50. size_entry.insert(0, "12")
  51. size_entry.pack(side='left', padx=5)
  52. tk.Button(font_frame, text="应用", command=change_font).pack(side='left')

  53. root.mainloop()
复制代码


这个示例使用了try-except来捕获错误并弹窗提示。字体和字号可以手动输入后点击“应用”更改。你可以根据需要扩展功能。如果遇到具体问题,欢迎回复!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-7-1 10:37

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表