进制转换计算器.doc

上传人:知****量 文档编号:12957956 上传时间:2022-04-27 格式:DOC 页数:10 大小:146KB
返回 下载 相关 举报
进制转换计算器.doc_第1页
第1页 / 共10页
进制转换计算器.doc_第2页
第2页 / 共10页
点击查看更多>>
资源描述

《进制转换计算器.doc》由会员分享,可在线阅读,更多相关《进制转换计算器.doc(10页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、. -一 功能概述本应用是讲从数字键盘输入的某进制的数据按要求转换成其他进制的数据,以实现进制转换。本例程是基于对话框的工程,用一个对话框作为应用程序的主窗口,同时实例通过各种控件实现进制转换功能。其中,控件主要包括以下类型:编辑框,命令按钮、静态文本、群组框、单项选择按钮、复选框。其中主要控件功能为:“输入数据和“转换数据编辑框,分别用于显示输入的数矩和转换的结果。“转换为八进制、“转换为十六进制、“转换为十进制三个命令按钮。用于将输入的数据转换为其他的进制。“重新开场按钮用于将输入的数据和转换的数据清空。“八进制、“十进制、“十六进制单项选择按钮对应输入数据的进制。同时为防止输入某进制下无

2、效的按钮,对进制无效的按钮施予静止。本实例中默认输入为十进制。0-9按钮和A-F按钮做为数字键盘“输入数据加进制符号和“转换数据加进制符号“数据格式显示选择群组框中两个复选框作为一组。应用程序实例界面二 实现步骤步骤一选择file | new 命令,翻开new对话框,选择project选项卡,设置工程名为Calculator,然后单击OK按钮。如下列图所示:步骤二翻开下列图所示对话框,选择根本对话框,其余设置均采用默认操作,单击“完成按钮完成整个工程的创立,如下列图:步骤三在应用程序的主窗口的对话框资源中添加控件,并为对话框中的各个控件添加成员变量和消息响应函数。在已生成的IDD_CALCUA

3、TOR_DIALOG对话框中添加控件资源如下表:控件标题控件类型ID号风格输入数据静态文本IDC_STATIC默认转换数据静态文本IDC_STATIC默认输入数据编辑控件IDC_EDIT_INPUT默认转换数据编辑控件IDC_EDIT_OUTPUT默认0按钮IDC_BUTTON_0默认1按钮IDC_BUTTON_1默认2按钮IDC_BUTTON_2默认3按钮IDC_BUTTON_3默认4按钮IDC_BUTTON_4默认5按钮IDC_BUTTON_5默认6按钮IDC_BUTTON_6默认7按钮IDC_BUTTON_7默认8按钮IDC_BUTTON_8默认9按钮IDC_BUTTON_9默认A按钮I

4、DC_BUTTON_A默认B按钮IDC_BUTTON_B默认C按钮IDC_BUTTON_C默认D按钮IDC_BUTTON_D默认E按钮IDC_BUTTON_E默认F按钮IDC_BUTTON_F默认重新开场按钮IDC_BUTTON_RESET默认转换为八进制按钮IDC_BUTTON_TO_O默认转换为十六进制按钮IDC_BUTTON_TO_H默认转换为十进制按钮IDC_BUTTON_TO_D默认八进制单项选择按钮IDC_RADIO_O默认十进制单项选择按钮IDC_RADIO_D默认十六进制单项选择按钮IDC_RADIO_H默认数据格式选择群组框IDC_STATIC默认输入数据加进制符号复选框ID

5、C_CHECK_INPUT默认输出数据加进制符号复选框IDC_CHECK_OUTPUT默认添加成员变量和消息响应函数消息响应函数如下表:控件ID通知消息消息响应函数IDC_BUTTON_0BN_CLICKEDOnButton0()IDC_BUTTON_1BN_CLICKEDOnButton1()IDC_BUTTON_2BN_CLICKEDOnButton2()IDC_BUTTON_3BN_CLICKEDOnButton3()IDC_BUTTON_4BN_CLICKEDOnButton4()IDC_BUTTON_5BN_CLICKEDOnButton5()IDC_BUTTON_6BN_CLICK

6、EDOnButton6()IDC_BUTTON_7BN_CLICKEDOnButton7()IDC_BUTTON_8BN_CLICKEDOnButton8()IDC_BUTTON_9BN_CLICKEDOnButton9()IDC_BUTTON_ABN_CLICKEDOnButtonA()IDC_BUTTON_BBN_CLICKEDOnButtonB()IDC_BUTTON_CBN_CLICKEDOnButtonC()IDC_BUTTON_DBN_CLICKEDOnButtonD()IDC_BUTTON_EBN_CLICKEDOnButtonE()IDC_BUTTON_FBN_CLICKEDO

7、nButtonF()IDC_BUTTON_RESETBN_CLICKEDOnButtonReset()IDC_BUTTON_TO_OBN_CLICKEDOnButtonToO()IDC_BUTTON_TO_HBN_CLICKEDOnButtonToH()IDC_BUTTON_TO_DBN_CLICKEDOnButtonToD()IDC_RADIO_DBN_CLICKEDOnButtonRadioD()IDC_RADIO_OBN_CLICKEDOnButtonRadioO()IDC_RADIO_HBN_CLICKEDOnButtonRadioH()成员变量如下表:控件ID数据类型成员变量IDC_

8、BUTTON_8CButtonm_Button_8IDC_BUTTON_9CButtonm_Button_9IDC_BUTTON_ACButtonm_Button_AIDC_BUTTON_BCButtonm_Button_BIDC_BUTTON_CCButtonm_Button_CIDC_BUTTON_DCButtonm_Button_DIDC_BUTTON_ECButtonm_Button_EIDC_BUTTON_FCButtonm_Button_FIDC_EDIT_INPUTCStringm_InputEditIDC_EDIT_OUTPUTCStringM_OutputEditIDC_CH

9、ECK_INPUTBOOLm_Check_InputIDC_CHECK_OUTPUTBOOLm_Check_Output步骤四通过上述步骤完成各个控件的添加和控制,下面将对对话框进和控件进展编程,以实现目标功能数字键按钮初始状态的设定。由于默认的进制为十进制,所以09折十个数字的默认状态是enable。因为系统的所有命令按钮的默认状态是enable,所以需要在初始化的时候将AF的状态设置为disable。选择class view 选项卡,双击CCalculatorDig下面的OnInitDialog并在return钱添加如下代码:m_button_A.EnableWindow(FALSE);m

10、_button_B.EnableWindow(FALSE);m_button_C.EnableWindow(FALSE);m_button_D.EnableWindow(FALSE);m_button_E.EnableWindow(FALSE);m_button_F.EnableWindow(FALSE);在程序运行过程中,数字键按钮的状态需要根据对三个单项选择按钮的选择而定。它们的事件函数代码分别如下:void CCalculatorDig:OnRADIOo() char_radio=O;value=0;m_button_8.EnableWindow(FALSE);m_button_9.En

11、ableWindow(FALSE);m_button_A.EnableWindow(FALSE);m_button_B.EnableWindow(FALSE);m_button_C.EnableWindow(FALSE);m_button_D.EnableWindow(FALSE);m_button_E.EnableWindow(FALSE);m_button_F.EnableWindow(FALSE);void CCalculatorDig:OnRADIOd() char_radio=D;value=0;m_button_8.EnableWindow(TRUE);m_button_9.Ena

12、bleWindow(TRUE);m_button_A.EnableWindow(FALSE);m_button_B.EnableWindow(FALSE);m_button_C.EnableWindow(FALSE);m_button_D.EnableWindow(FALSE);m_button_E.EnableWindow(FALSE);m_button_F.EnableWindow(FALSE);void CCalculatorDig:OnRADIOh() char_radio=H;value=0;m_button_8.EnableWindow(TRUE);m_button_9.Enabl

13、eWindow(TRUE);m_button_A.EnableWindow(TRUE);m_button_B.EnableWindow(TRUE);m_button_C.EnableWindow(TRUE);m_button_D.EnableWindow(TRUE);m_button_E.EnableWindow(TRUE);m_button_F.EnableWindow(TRUE);给数字按钮添加代码,07相似以0为例代码如下:void CCalculatorDig:OnButton0() / TODO: Add your control notification handler code

14、hereint i_chekinput=m_CHECK_INPUT;/.GetState();/获取“数据输入复选框的状态,1:表示选中switch(char_radio)case D:value=value*10+0;str.Format(%d,value);/将输入数据转化为字符串if(i_chekinput=1)/str=str+d;break;case O:value=value*8+0;str.Format(%o,value);/将输入数据转化为字符串if(i_chekinput=1)/str=str+o;break;case H:value=value*16+0;str.Forma

15、t(%x,value);/将输入数据转化为字符串if(i_chekinput=1)/str=str+H;break;m_inputedit=str;UpdateData(FALSE);8,9不考虑八进制输入一8为例代码如下:void CCalculatorDig:OnButton8() int i_chekinput=m_CHECK_INPUT;/.GetState();/获取“数据输入复选框的状态,1:表示选中switch(char_radio)case D:value=value*10+8;str.Format(%d,value);/将输入数据转化为字符串if(i_chekinput=0)

16、/str=str+D;break;case H:value=value*16+8;str.Format(%x,value);/将输入数据转化为字符串if(i_chekinput=0)/str=str+H;break;m_inputedit=str;UpdateData(FALSE);/ TODO: Add your control notification handler code hereAF以A为例代码如下:void CCalculatorDig:OnButtonA() int i_chekinput=m_CHECK_INPUT;/.GetState();/获取“数据输入复选框的状态,1:

17、表示选中value=value*16+0x0A;str.Format(%x,value);/将输入数据转化为字符串if(i_chekinput=0)/str=str+H;/ TODO: Add your control notification handler code here三个转换按钮事件的编写代码如下:void CCalculatorDig:OnBUTTONtod() / TODO: Add your control notification handler code hereint i_checkoutput=m_CHECK_OUTPUT;/.GetState();str.Forma

18、t(%d,value);if(i_checkoutput=1)str=str+D;m_outpuedit=str;UpdateData(FALSE);/void CCalculatorDig:OnBUTTONtoh() int i_checkoutput=m_CHECK_OUTPUT;/.GetState();str.Format(%0x,value);if(i_checkoutput=0)str=str+h;m_outpuedit=str;UpdateData(FALSE);/ TODO: Add your control notification handler code herevoid

19、 CCalculatorDig:OnBUTTONtoo() int i_checkoutput=m_CHECK_OUTPUT;/.GetState();str.Format(%o,value);if(i_checkoutput=0)str=str+o;m_outpuedit=str;UpdateData(FALSE);/ TODO: Add your control notification handler code here上述代码中str为全局变量,把输入的数据转换为CString类型的字符串以供显示。“重新开场代码如下:void CMyDlg:OnBUTTONreset() m_inputedit= ;m_outpuedit= ;value=0;UpdateData(FALSE);步骤五保存工程,编译,连接,运行程序。我们通过一个简单的实例,介绍了各种常用控件的使用方法。控件是运行Windows应用程序开发的常用工具。同学们在学习本例之后,知道如何定义控件变量,如何调用控件的方法,以及如何定义控件的事件驱动函数等,进一步掌握控件在visual c+程序开发中的使用。小结. . word.zl-

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 研究报告 > 设计方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com