# 快捷计算器 **Repository Path**: xa87/quick-calculator ## Basic Information - **Project Name**: 快捷计算器 - **Description**: 一个轻量级桌面计算器,支持**实时运算**、**全局快捷键唤醒**、**系统托盘隐藏**,使用 C# Native AOT 编译为单文件可执行程序。AI生成。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-06 - **Last Updated**: 2026-06-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 快捷计算器 (QuickCalc) 一个轻量级桌面计算器,支持**实时运算**、**全局快捷键唤醒**、**系统托盘隐藏**,使用 C# Native AOT 编译为单文件可执行程序。 ![version](https://img.shields.io/badge/version-1.0.0-brightgreen) --- ## 功能特色 | 功能 | 说明 | |------|------| | 🔢 **实时计算** | 输入即计算,结果实时显示 | | 📋 **一键复制** | 按 `Enter` 将结果复制到剪贴板 | | ⌨ **全局快捷键** | 默认 `Alt+Z` 唤醒/隐藏窗口 | | 🎯 **后台常驻** | 关闭窗口/按 `Esc` 即隐藏到系统托盘,不退出 | | 🔣 **数学运算** | 支持加减乘除、括号、幂运算、三角函数等 | | ⚡ **AOT 编译** | Native AOT 编译,启动极快,无运行时依赖 | | 🚀 **开机自启** | 支持开机自动运行(`-min` 参数后台启动) | --- ## 快捷键 | 按键 | 功能 | |------|------| | `Alt+Z` (默认) | 全局唤醒 / 隐藏窗口 | | `Enter` | 计算结果复制到剪贴板 | | `Esc` | 隐藏到系统托盘(不退出) | > **注意**:`Esc` 和关闭按钮一样是隐藏到托盘,不是退出程序。需在托盘图标右键 → 退出。 > **自定义快捷键**:编辑 `calc_config.ini` 中的 `HotKey=` 项,支持组合: > - `Alt`, `Ctrl`, `Shift`, `Win` > - 按键: `A-Z`, `0-9`, `F1-F24`, `Space`, `Enter`, `Tab`, `Esc`, `Backspace` > > 示例: `HotKey=Ctrl+Shift+C` --- ## 支持的运算 ### 基本运算 | 运算符 | 示例 | 说明 | |--------|------|------| | `+` | `1+2` → 3 | 加法 | | `-` | `5-3` → 2 | 减法 | | `*` | `4*5` → 20 | 乘法 | | `/` | `10/3` → 3.333... | 除法 | | `^` | `2^10` → 1024 | 幂运算 (右结合) | | `( )` | `(1+2)*3` → 9 | 括号分组 | ### 数学函数 | 函数 | 示例 | 说明 | |------|------|------| | `sin()` | `sin(3.14159)` → ≈0 | 正弦 (弧度) | | `cos()` | `cos(0)` → 1 | 余弦 (弧度) | | `tan()` | `tan(0)` → 0 | 正切 (弧度) | | `sqrt()` | `sqrt(16)` → 4 | 平方根 | | `abs()` | `abs(-5)` → 5 | 绝对值 | | `round()` | `round(3.7)` → 4 | 四舍五入 | | `floor()` | `floor(3.7)` → 3 | 向下取整 | | `ceil()` | `ceil(3.1)` → 4 | 向上取整 | ### 常量 | 名称 | 值 | |------|-----| | `pi` | 3.1415926535... | | `e` | 2.7182818284... | ### 示例表达式 ``` 1 + 2 * 3 → 7 (1 + 2) * 3 → 9 2 ^ 10 → 1024 sin(pi / 2) → 1 sqrt(3^2 + 4^2) → 5 cos(3.14159) → -1 2 ^ 3 ^ 2 → 512 (右结合: 2^(3^2) = 2^9) 100 / (5 + 5) * 2 - 3 → 17 ``` --- ## 配置文件 程序启动时自动读取所在目录的 `calc_config.ini`,不存在则自动创建。 ```ini [Settings] ; 唤醒快捷键 HotKey=Alt+Z ; 开机自动运行 (true/false) AutoRun=true ``` ### AutoRun 说明 - `AutoRun=true`(默认):程序首次启动时会自动写入注册表 `HKCU\...\Run`,实现开机自启 - 开机自启时传入 `-min` 参数,程序后台最小化运行,不显示主窗口 - 修改配置后重启程序即可同步注册表状态 --- ## 系统托盘 - 关闭窗口 / 按 `Esc` → 隐藏到系统托盘(不退出) - 双击托盘图标 → 显示/隐藏窗口 - 右键托盘图标 → 菜单:显示、退出 ## 命令行参数 | 参数 | 说明 | |------|------| | `-min` | 后台最小化启动(用于开机自启),不显示主窗口 | 无参数双击运行 → 正常显示主窗口。 --- ## 构建与发布 ### 环境要求 - .NET 10.0 SDK (或更高) - Windows x64 ### 开发调试 ```bash dotnet build dotnet run ``` ### AOT 发布(单文件,无需 .NET 运行时) ```bash dotnet publish -c Release -r win-x64 --self-contained ``` 输出文件:`bin/Release/net10.0-windows/win-x64/publish/QuickCalc.exe` --- ## 项目结构 ``` QuickCalc/ ├── Program.cs # 入口 ├── CalculatorForm.cs # 主窗口 + 系统托盘 + 快捷键处理 ├── ExpressionParser.cs # 数学表达式解析引擎 ├── ConfigManager.cs # calc_config.ini 读写 ├── HotKeyManager.cs # 全局快捷键管理器 ├── calc_config.ini # 运行时配置文件(自动生成) ├── QuickCalc.csproj # 项目文件(AOT 配置) └── README.md # 本文件 ``` --- ## 关于本项目 本项目由 **AI 辅助创建**。 | 条目 | 说明 | |------|------| | 🤖 **AI 模型** | DeepSeek-Flash | | 🧰 **开发工具** | [Reasonix](https://reasonix.ai) — AI 编码代理 | | 💬 **交互语言** | 中文(自然语言需求描述) | | ⏱ **开发时长** | 单轮对话完成全部编码 | | 💰 **Token 消耗** | 命中 96.58%,¥0.1411 耗时约 8分钟| ### 项目生成过程 1. 提出需求 → AI 编写分层实施计划 2. 逐模块生成代码:表达式引擎 → 配置模块 → 快捷键 → 主窗体 → 系统托盘 3. 自动适配 Native AOT 编译(解决 WinForms + AOT 兼容性) 4. 自动生成说明文档 + 初始化 Git 仓库 --- ## 许可证 MIT License