第一次写这种东西,把我的第一个学习笔记就献给MFC的一个计算器简单实现的思路吧。
首先各种控件,然后现增加两个消息映射把数字按钮和操作按钮实现统一曹操作(也可以一个一个按钮的添加消息映射,不过那样麻烦点),
用的是afx_msg OnNumberKey(UINT nID),afx_msg OnOperationState(UINT nID)然后增加控件关联在MESSAG_MAP里添加On_COMMAND_RANGE(IDC_NUMBER1,IDC_NUMBER9,OnNUmberKey());类似的两个,还有一个是operation的,我只记了个大概,详细的应该去查一查,然后及最后结果为m_result,这个控件关联一个编辑框变量作为中间计算的过程量和结果显示,另外定义两个double变量number1 number2 分别表示每次计算的两个数,还有int变量NumberState和OperationState,作为该如何进行判断,首先置Numberstate=1,然后按键更新m_result的值(每次按一次数字键就是m_result的值乘10再加上按得那个键的值),然后按操作键,这时候记录operationState的值,然后置NUmberState=2,(记得及时更新UpdateDAta(false))m_result=0(给下次number2输入值做准备),然后按下计算的等于键,这时候根据相应的OPerationState的值采取相应的计算number1和number2的计算结果,然后再把结果m_result赋给number1,并把result请0,为下一次运算做准备。