永发信息网

MFC简易计算器,怎么实现退格功能,请问一下思路?

答案:2  悬赏:20  手机版
解决时间 2021-03-21 01:51
MFC简易计算器,怎么实现退格功能,请问一下思路?
最佳答案
这要看你的编辑框关联的是什么变量。
如果是字符串,那么m_str = m_str.Left(m_str.GetLength()-1);一个语句搞定。
如果是数值型,那么就比较麻烦了。先要判断是否有小数点,
没有就直接m_double = (int)m_double /10;
有小数点,纯数字运算做一个循环吧,每次乘以10,判断是否和强制int相等,直到相等了,取前一次的数值(小数点后一位)强制int,然后除以n-1个10就ok
全部回答
不是有CEdit控件么?可以用控件撒。但是你一定要按你说的话呢 。也是可以的。只是有点麻烦。
先创建一个窗口。再在窗口上创建光标。再创建一个CStringArray类每当你输入一个字符时就把字符存入CstirngArray对象中。当按下的是删除键是就把药删除的字符移除掉。如果你不知道怎么移除呢。那你还的去看看CStirngArray的方法。要是你想删除中间的呢。也好办。。当你的光标移动到中间位置按下删除键时。就算下一光标到字符开始输出的位置(及就是你的第一个字符的位置)的长度(像素为单位的)。最后在用一个加一循逐渐从你的CStringArray对象中取出字符用dc中的GetExtent计算出单给你从前边算出来的像素一样是的字符序号。然后删除就OK啦。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
门前正中横放一拖鞋是什么意思
1011转10进制得多少?
我是理科生,今年考了专科分373,哪些学校比
顾炎武2015说的一句名言鼓励国人热爱祖国。
世贸·五彩城在什么地方啊,我要过去处理事情
这几天快递怎么这么慢
天国的阶梯中韩静书是哪一集恢复记忆的
on due presentation是什么意思
初中的物理化学应该怎么学好
令、氏字加部首有什么字?
蓝天桑拿休闲中心地址在哪,我要去那里办事
拽的意思WW里说龙马拽是啥意思?PS:不要跟我说
洗衣机用的洗衣网袋
裘德洛种头发效果怎么样
瓜州县公安局交警大队车管所地址在什么地方,
推荐资讯
呼伦贝尔市闯红灯扣几分怎么查
2016年农村户口转入另一个农村可以吗
have trouble in doing sth
太原市图书馆东门地址在哪,我要去那里办事
虚拟机主要靠电脑的什么配置、显卡,内存 还
技术职称有哪些
(-3.1)-(-4.5)+(4.4)-(103)+(
短文改错(共10小题,每小题1.5分;满分15分
装冰箱的纸盒含甲醛么,用纸盒给孩子做了个房
若白到底有没有死?如果没有为什么第二部,要
在中国买了个苹果的笔记本电脑,要拿去韩国用
歌词中有“我也曾写过这首法”的歌
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?