[应用相关] 程序怎修改

[复制链接]
 楼主| handleMessage 发表于 2017-6-19 21:02 | 显示全部楼层 |阅读模式
当输入密码时,如果输入有误,当按下 删除键后,删除刚刚输入的密码,然后当再次按下数字键时,接着开始,程序如下,怎样修改呢?

void get_psw(void)  //输入密码
{
     unsigned char i;
    lcd_c_send(0xc0); //第二行显示“*”
     for (i=0;i<8 ;i++ )
       {
          keyscan();
         while (keynum>=11 && keynum<=15) //除0~10以外,(10为删除键)其他键值则不响应
          keyscan();
           {
                psw_mem[i]=keynum;   //键值送暂存区保存
                lcd_d_send(0x2a);     //*号
                delay1(20);        //短延时,才能显示最后一个“*”
           }
     }
}
zhouhuanの 发表于 2017-6-19 21:07 | 显示全部楼层
keyscan是键扫的程序吧。
bbapple 发表于 2017-6-19 21:09 | 显示全部楼层
无论是退格删除,还是全部删除,都只是个 状态转移而已。
wanglaojii 发表于 2017-6-19 21:14 | 显示全部楼层
如果是删除一个字符, 象缓冲指针 i -1, 这样倒回一个字符。
laozhongyi 发表于 2017-6-19 21:16 | 显示全部楼层
或者是删除全部字符, 则清空缓冲。。
Edisons 发表于 2017-6-19 21:21 | 显示全部楼层
当有按下删除键后,光标倒退并且清除之前的数(按几次就清除几位)
_gege 发表于 2017-6-19 21:25 | 显示全部楼层
设计产品还是必须要掌握分时处理的方法,否则困难重重。
Mozarts 发表于 2017-6-19 21:29 | 显示全部楼层
在每次输入后,所有字符刷新显示,删除键就是缓冲区的有效字符个数减一。
Listate 发表于 2017-6-19 21:31 | 显示全部楼层
搞个缓冲,估计就好了啊!!
Varus 发表于 2017-6-20 16:40 | 显示全部楼层
清空缓冲
643757107 发表于 2017-6-20 16:53 | 显示全部楼层
如果按下那个删除,就指针--,如果是在输入密码,那个密码 存放的数组,指针++
您需要登录后才可以回帖 登录 | 注册

本版积分规则

166

主题

1689

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部