Skip to content

代码结构

PhiChartSearch 的代码基于 PyQt5 和 QFluentWidgets,采用面向对象的方式组织。

主要模块

  • QT_ChartAnalyzer.py: 主程序文件,包含所有类和逻辑。

主要类

主窗口类

  • MainWindow: 主窗口类,负责工程管理器界面。它包含程序文件夹设置、工程列表展示、创建/打开/删除/刷新工程等功能。

工程相关类

  • CreateProjectDialog: 创建工程对话框类,用于创建新的谱面工程。
  • ProjectWindow: 工程管理窗口类,用于管理单个工程的文件(信息、谱面、音频、曲绘)。

搜索相关类

  • ChartSearchWindow: 谱面搜索窗口类,用于搜索和选择谱面文件。
  • AudioSearchWindow: 音频搜索窗口类,用于搜索和选择音频文件。

修改相关类

  • ModifyInfoDialog: 修改工程信息对话框类。
  • ModifyArtDialog: 修改曲绘对话框类,提供重新生成曲绘或选择本地图片替换的功能。

其他类

  • Chart: 用于表示和分析谱面文件数据的类。
  • AboutDialog: 关于对话框类。

主要函数

  • load_config(), save_config(): 加载和保存程序配置。
  • generate_random_path(): 生成随机的工程路径标识。
  • create_info_txt(), read_info_txt(), update_info_txt(): 创建、读取和更新工程信息文件。
  • get_audio_duration(): 获取音频文件时长。
  • create_chart_art(): 创建曲绘图片。
  • scan_projects(): 扫描程序文件夹中的所有工程。
  • analyseJsonChart(): 分析谱面文件,生成 Chart 对象。