1 第八章 经典计算器 这是一款基于对话框的简易计算器,功能实现比较简单,代码主要集中在计算模块。程序运行界面如图 8 -1 所示 图 8 -1 经典计算机界面 8 .1 设计目的 通过本程序训练程序编写的基本技能,掌握基于对话框程序的基本设计方法和技巧,掌握基本计算方法,字符串函数功能。 8 .2 功能描述 本程序用 5 个功能模块组成,如图 8-2 所示。 1 . 界面模块 窗口界面是一个对话框,其包含 2 1 个按键控件和一个显示控件。按键控件都是按钮,用来接收数据。显示控件是一个静态文本框。按键控件中有 1 0 个数字键,4 个运算键,3个单目运算键,1 个回格键,1 个清除键和 1 个等号键。 2 . 四则运算模块 用户点击四则运算符键和等号键时,完成相应的运算。 3 . 单目运算模块 用户点击单目运算符时,完成相应得运算 4 . 显示模块 显示运算结果 5 . 接收模块 1 ) 接收 0 -9 数字和小数点,组合成符合逻辑的操作数; 2 2) 接收运算符,指示作出相应得运算; 3) 接收退格键,修改显示结果; 4) 结束清除键,复位所有状态。 计算器 窗口界面 四则运算 接收数据 单目运算 结果显示 图 8-2 程序的功能模块 8 .3 总体设计 8 .3 .1 界面和初始化 1.界面 本程序是基于对话框的,界面设计就是画框的设计。 在工作区种打开资源视图,并添加一个对话框,向对话框中添加控件,如图 8-1。资源ID 入列表 8-1。 名称 ID 标题 样式 对话框 IDD_CALCULATOR_DIALOG Classics Calcu lator 字体:宋体,9 号字 DS_CENTER(居中) 静态文本框 IDC_STATIC_OUTPUT 0. WS_EX_CLIENTEDGE(Clinet edge) 按钮 IDC_KEY_1 1 IDC_KEY_2 2 IDC_KEY_3 3 IDC_KEY_4 4 IDC_KEY_5 5 IDC_KEY_6 6 IDC_KEY_7 7 IDC_KEY_8 8 IDC_KEY_9 9 IDC_KEY_0 0 IDC_KEY_DOT . IDC_KEY_EQUAL = IDC_KEY_PLUS + 3 IDC_KEY_MINUS - IDC_KEY_MULT * IDC_KEY_DIVIDE / IDC_KEY_SQRT sqrt IDC_KEY_FACT 1/x IDC_KEY_SIGN -/+ IDC_KEY_BACKSPACE Backspace IDC_KEY_CLEAR C 2.控件ID 的调整 程序设计要求一些控件的ID 必须是连续的。因此,必须打开 resou rce.h 文件对它们作手工调整。 #define IDM_ABOUTBOX 0x 0010 #define IDD_ABOUTBOX 100 #define IDS_ABOUTBOX 101 #define IDD_CALCULATOR_DIALOG 102 #d...