Fyne 系列 18:做一个完整桌面工具
cbowen

学完控件、布局、文件对话框和打包后,最好用一个完整小工具把知识串起来。这里建议做一个批量重命名工具,功能明确,也能覆盖常见桌面应用结构。

功能设计

这个工具可以包含:

  • 选择目录
  • 列出目录下文件
  • 输入命名前缀
  • 预览重命名结果
  • 点击按钮执行
  • 显示成功和失败数量

界面结构可以用 Border

  • 顶部:选择目录和刷新按钮
  • 中间:文件列表或表格
  • 底部:命名规则和执行按钮
  • 状态栏:显示当前状态

数据结构

1
2
3
4
5
type RenameItem struct {
OldName string
NewName string
Checked bool
}

不要把所有状态都散落在控件里。先有数据结构,再让界面展示和修改这些数据。

主要流程

  1. 用户选择目录
  2. 程序扫描文件
  3. 根据命名规则生成新文件名
  4. 表格显示旧名称和新名称
  5. 用户确认后执行重命名
  6. 显示结果

执行重命名前要检查新文件名是否冲突,避免覆盖已有文件。

可以用到的 Fyne 能力

  • dialog.ShowFolderOpen 选择目录
  • widget.Table 显示预览
  • widget.Entry 输入前缀
  • widget.Button 执行任务
  • dialog.ShowConfirm 二次确认
  • dialog.ShowError 显示错误
  • fyne package 打包发布

继续扩展

这个项目还可以加入:

  • 正则替换
  • 序号补零
  • 撤销重命名
  • 保存用户偏好
  • 拖拽文件
  • 发布 Windows、macOS、Linux 版本

一个完整桌面工具不一定复杂,但应该有清晰的数据流、错误处理和发布方式。做到这一步,Fyne 就不只是能跑 demo,而是真的能帮你交付工具了。

 评论
评论插件加载失败
正在加载评论插件