




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
案例二十七个人所得税计算器本案例知识要点IF语句的设计和使用类的设计和使用类的构造函数的使用1页共41页第一页,共四十二页。一、案例需求案例描述从2006年1月1日起,个人所得税定为从1600元起征。对每月收入超过1600元的部分征税,适用5%~45%的9级超额累进税率。即:计税金额每月工资1600元,个人所得税计税金额税率速算扣除数。税率表如表所示。试开发个人所得税计算器。2页共41页第二页,共四十二页。税率表3页共41页第三页,共四十二页。案例效果图个人所得税计算器案例效果如图所示。个人所得税计算器案例效果图4页共41页第四页,共四十二页。功能说明定义一个对话框,对输入的个人月收入计算所得税。5页共41页第五页,共四十二页。二、案例分析根据案例需求,需要利用MFC环境定义一个菜单、一个输入对话框类,提供个人月收入的输入界面;另外需要定义一个PayTax类,在PayTax类中定义数据成员,包括个人月收入和个人所得税,定义成员函数,即税率计算函数。最后在对话框中输出相应的缴纳税额。6页共41页第六页,共四十二页。三、案例设计1.类的设计基于上述分析,本案例需要设计一个类PayTax,其结构如图所示。7页共41页第七页,共四十二页。PayTax类结构8页共41页第八页,共四十二页。(1)数据成员doubleincome;工资月收入。doubleoutput;个人所得税。(2)函数成员PayTax(doublemoney);带参构造函数。doublecalculate();计算个人所得税。9页共41页第九页,共四十二页。在类视图ClassView中右击Example2classes选项,在弹出的快捷菜单中选择NewClass命令,弹出“新建类”对话框,在“类的类型”下拉列表框中选择普通类GenericClass,在“类信息”选项区域的“名称”文本框中输入类名“PayTax”,单击【确定】按钮。完成后在类视图ClassView中出现新类PayTax。在文件视图的HeaderFiles目录下找到PayTax.h文件并双击打开,其中已经出现了该类的声明,添加成员函数calculate(),修改构造函数PayTax的声明,添加变量成员income、output的声明。在文件视图的SourceFiles目录下找到PayTax.cpp文件并双击打开,可以看到构造函数和析构函数的定义已经存在,在其下添加成员函数calculate()的定义和修改构造函数PayTax()的定义。10页共41页第十页,共四十二页。2.对话框设计在资源视图ResourceView中右击Dialog选项,选择InsertDialog命令,在打开的对话框内添加静态文本框StaticText和文本框EditBox控件并修改属性,上面的Edit控件的ID为IDC_EDIT1,下面的Edit控件的ID为IDC_EDIT2,而且因为IDC_EDIT2控件用于个人所得税的输出,所以设计其“边框”属性为“不选中”,“只读”属性为“选中”,对话框的设计结果如图所示。11页共41页第十一页,共四十二页。对话框设计结果12页共41页第十二页,共四十二页。双击“个人所得税计算器”对话框,弹出AddingaClass对话框,添加一个新类Creatanewclass,单击【OK】按钮。在对话框中填写对话框类名Inputdlg,单击【OK】按钮。13页共41页第十三页,共四十二页。创建对话框类14页共41页第十四页,共四十二页。在“查看”菜单下选择ClassWizard命令,在打开的对话框中切换到MemberVariables选项卡。修改成员变量的名称和类型。其中IDC_EDIT1的成员变量名为m_income,类型为double,代表个人收入;IDC_EDIT2的成员变量名为m_output,类型为double,代表个人所得税,单击【确定】按钮退出。设计结果如图所示。15页共41页第十五页,共四十二页。对话框类成员变量的设计结果16页共41页第十六页,共四十二页。从“查看”菜单中打开类向导MFCClassWizard,在ObjectIDs列表框中选择IDOK选项,在Classname下拉列表框中选择Inputdlg选项,在Message列表框中选择相应的选项后,单击【AddFunction】按钮,弹出对话框,默认菜单成员函数的名称为OnOK(),单击【OK】按钮,则在Memberfunctions列表框中添加了成员函数,该函数是Inputdlg类的成员函数,单击【EditCode】按钮可以对函数进行编辑。17页共41页第十七页,共四十二页。3.菜单设计在资源视图ResourceView中单击Menu目录,双击IDR_MAINFRAME选项,修改命令,设置菜单Tax的ID为ID_MENUTax。从“查看”菜单中打开类向导MFCClassWizard,在ObjectIDs列表框中选择ID_MENUTax选项,在Classname下拉列表框中选择Cexample2View,在Message列表框中选择COMMAND选项后,单击【AddFunction】按钮,弹出对话框,默认菜单成员函数的名称为OnMENUTax(),单击【OK】按钮,则在Memberfunctions列表框中添加了成员函数,该函数是CExample2View类的成员函数,单击【EditCode】按钮可以对函数进行编辑。18页共41页第十八页,共四十二页。四、案例实现19页共41页第十九页,共四十二页。20页共41页第二十页,共四十二页。21页共41页第二十一页,共四十二页。22页共41页第二十二页,共四十二页。23页共41页第二十三页,共四十二页。24页共41页第二十四页,共四十二页。25页共41页第二十五页,共四十二页。26页共41页第二十六页,共四十二页。27页共41页第二十七页,共四十二页。28页共41页第二十八页,共四十二页。29页共41页第二十九页,共四十二页。30页共41页第三十页,共四十二页。31页共41页第三十一页,共四十二页。32页共41页第三十二页,共四十二页。33页共41页第三十三页,共四十二页。34页共41页第三十四页,共四十二页。35页共41页第三十五页,共四十二页。36页共41页第三十六页,共四十二页。37页共41页第三十七页,共四十二页。38页共41页第三十八页,共四十二页。五、案例总结与提高案例总结Example2View.cpp文件中定义的菜单成员函数OnMENUTax()的功能非常简单,只是进行对话框的调用。具体操作放在了Inputdlg.cpp文件中的对话框成员函数OnOK()中去实现。在PayTax.cpp文件中定义的PayTax类的成员函数calculate()中使用if…elseif…else结构实现了5%~45%的9级超额累进税率的税率TaxRatio、速算扣除数Discount和计税收入ExtraTax的计算,请读者认真体会。39页共41页第三十九页,共四十二页。案例提高请修改本例的案例,以实现对不同地区个人所得税起征点(如800元、2000元)进行计算。要求设计完成后的界面如图所示。40页共41页第四十页,共四十二页。带有起征点的个人所得税计算器41页共41页第四十一页,共四十二页。内容总结案例二十七个人所得税计算器。案例二十七个人所得税计算器。从2006年1月1日起,个人所得税定为从1600元起征。对每月收入超过1600元的部分征税,适用5%~45%的9级超额累进税率。即:计税金额每月工资1600元,个人
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 旅游行业行程变动及责任豁免协议书
- 电子支付平台开发与推广合作协议
- 营业办公用房买卖协议书
- 中学生感恩教育故事观后感
- 高考语文高频文言实词60词表解
- 环保能源行业项目合作风险提示
- 高考语文备考之明朝作家文言文汇编(下)
- 购销家具合同家具购销合同
- 绿色农业种植合同
- 装修工程劳务外包合同
- 《研学旅行课程设计》课件-初识研学旅行发展历程
- 传染病手术的处理流程
- 新质生产力:中国创新发展的着力点与内在逻辑
- 《中医常用护理技术基础》课件-八纲辨证施护
- 心理健康与职业生涯(中等职业)全套教学课件
- 市政园林安全生产培训课件
- 基于BIM的轴流通风机施工工艺优化
- 2024年大学生自我意识教学案
- 女生青春期知识讲座(六年级)课件
- 消化道出血讲课课件
- 化工过程安全管理导则
评论
0/150
提交评论