求助易语言写的计算器计算表达式问题和热键问题
功能说明:本程序是一个基于易语言开发的图形界面计算器应用,具备多种计算模式和友好的用户交互界面。根据代码结构和子程序命名分析,该程序主要由启动选择界面、公式计算器模块和普通计算器模块组成,旨在提供基础的数值计算以及支持复杂表达式的公式计算功能。
以下是程序的详细功能总结:
1. **启动与模式选择**
程序入口位于“启动窗口程序集”。当程序运行时,在 `__启动窗口_创建完毕` 事件中初始化界面。用户可以通过点击界面上的选项来加载不同的功能窗口。
- `_公式计算器_被选择载入`:销毁当前窗口并加载“公式计算器”程序集界面,供用户进行复杂运算。
- `_普通计算器_被选择载入`:销毁当前窗口并加载“普通计算器”程序集界面,用于基础计算。
2. **公式计算器功能(核心功能)**
“公式计算器程序集”包含了详细的交互逻辑,是目前代码中实现最完善的部分。
- **数字输入**:提供了 `_按钮 0_` 至 `_按钮 9_` 以及 `_按钮点_`(小数点)。当用户点击这些按钮时,对应的字符会被追加到“编辑框 1"中,作为当前输入的数值。
- **运算符输入**:提供了 `_按钮加_`、`_按钮减_`、`_按钮乘_`、`_按钮除_` 以及 `_按钮括号 1_`(左括号)、`_按钮括号 2_`(右括号)。点击运算符时,程序会将“编辑框 1"中的当前数值移动至“编辑框 2"(公式显示区),并在末尾添加对应的符号,随后清空“编辑框 1"以便输入下一个数值。这种设计允许用户构建完整的数学表达式字符串。
- **表达式计算**:核心计算逻辑由 `_按钮等_被单击` 处理。程序利用名为“脚本组件 1"的组件,调用其 `计算表达式` 方法。它将“编辑框 2"中的历史公式与“编辑框 1"中的当前数值拼接,生成完整表达式进行求解,结果输出到“编辑框 3"中。如果结果有效,系统会自动清空输入框准备下一次计算。
- **清除与退格**:
- `_按钮清_`:一次性清空所有三个编辑框的内容,重置状态。
- `_按钮退_`:实现退格功能。逻辑优先检查“编辑框 1"是否有内容,有则删除最后一个字符;若为空,则删除“编辑框 2"内容的最后一个字符。
- **键盘支持**:程序集包含 `_公式计算器_按下某键` 事件,支持小键盘数字键(键码 96-99 等)直接触发界面对应按钮的点击事件,提高了操作效率。
3. **普通计算器功能**
“普通计算器程序集”在提供的代码片段中主要展示了导航逻辑。它包含了切换回“公式计算器”以及“返回主界面”的功能子程序。虽然具体的计算按钮逻辑未在片段中详细体现,但从结构上看,它是作为基础模式存在的,同样支持窗口间的自由跳转。
4. **技术实现特点**
- **窗口管理**:采用“创建并销毁”的对象生命周期管理方式来实现界面的切换,通过参数控制窗口样式和行为。
- **表达式解析**:并未直接使用基础数学运算函数,而是引入“脚本组件”来处理字符串形式的数学表达式,这意味着程序能够自动处理运算优先级(如先乘除后加减)和括号嵌套,大大增强了计算能力。
- **事件驱动**:程序高度依赖易语言的事件机制,无论是鼠标的“被单击”还是键盘的“按下某键”,均映射为具体的子程序执行流程。
综上所述,这是一款功能较为完善的易语言计算器软件,特别之处在于区分了“普通”与“公式”两种模式,并利用脚本组件强化了公式计算的能力,适合需要进行混合运算的用户使用。
======启动窗口程序集
| |
| |------ __启动窗口_创建完毕
| |
| |------ _公式计算器_被选择
| |
| |------ _普通计算器_被选择
| |
| |
======公式计算器程序集
| |
| |------ _按钮1_被单击
| |
| |------ _按钮2_被单击
| |
| |------ _按钮3_被单击
| |
| |------ _按钮4_被单击
| |
| |------ _按钮5_被单击
| |
| |------ _按钮6_被单击
| |
| |------ _按钮7_被单击
| |
| |------ _按钮8_被单击
| |
| |------ _按钮9_被单击
| |
| |------ _按钮0_被单击
| |
| |------ _按钮点_被单击
| |
| |------ _按钮加_被单击
| |
| |------ _按钮减_被单击
| |
| |------ _按钮括号1_被单击
| |
| |------ _按钮括号2_被单击
| |
| |------ _按钮乘_被单击
| |
| |------ _按钮除_被单击
| |
| |------ _按钮清_被单击
| |
| |------ _按钮退_被单击
| |
| |------ _按钮等_被单击
| |
| |------ _普通计算器_被选择
| |
| |------ _返回主界面_被选择
| |
| |------ _公式计算器_按下某键
| |
| |
======普通计算器程序集
| |
| |------ _公式计算器_被选择
| |
| |------ _返回主界面_被选择
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。