软件控制代码编写思考
2004-10-05 16:57
323 查看
1. 不使用异常提示,这样只会让客户认为是程序内部出了错误,如
catch(Exception &e)
{
ShowMessage("计算利息:" + e.Message);
return false;
}
2. 进行字符到数字转换之前先进行正确性判断
if (Ed->Text.Trim() != "" && IsNumber(Ed->Text.Trim() ))
C语言中没有数字判断的函数提供,需要自己编写,而不是用捕获转换异常(str.ToDouble())来判断输入数字有效性。VB中可以用IsNumeric(str)判断是否数字
3. 有些输入需即时判断输入有效性,计算出另外一个显示项,如果输入无效,最好不用弹出模式窗体的方法提示,因为即时判断一般用到OnEditExit等事件,弹出模式窗体的时候,弹出窗体获得了焦点,必然调用OnEditExit事件,关掉模式窗体,而此时原窗体上的具有Focus的已经不是原来使用判断时的控件,个人建议使用子窗体的状态栏还是其他不具有焦点的提示方式。
4. 提交输入的时候重新进行输入检查,如果有多个OnXXXExit事件,最好先将Focus定位到没有OnXXXEnter和OnXXXExit的控件中,应同时获取尽可能所有的错误输入,并分行显示,而不是发现一个错误提示一次。
if (!IsValidData(strA))
strErr += “strA”;
if (!IsValidData(strB))
strErr += “strB”;
if (strErr != ““)
{
ShowMessage(strErr); //这时候应使用ShowMessage
return;
}
5. 注意多个关联控件,比如在计算外币折算成人民币的时候,有三个输入框,汇率,外币金额,人民币金额,三个输入框中,汇率和外币金额的改动都需要重新计算人民币金额,则两个输入框都需要加上OnXXXExit的代码,缺了一个都可能出错
catch(Exception &e)
{
ShowMessage("计算利息:" + e.Message);
return false;
}
2. 进行字符到数字转换之前先进行正确性判断
if (Ed->Text.Trim() != "" && IsNumber(Ed->Text.Trim() ))
C语言中没有数字判断的函数提供,需要自己编写,而不是用捕获转换异常(str.ToDouble())来判断输入数字有效性。VB中可以用IsNumeric(str)判断是否数字
3. 有些输入需即时判断输入有效性,计算出另外一个显示项,如果输入无效,最好不用弹出模式窗体的方法提示,因为即时判断一般用到OnEditExit等事件,弹出模式窗体的时候,弹出窗体获得了焦点,必然调用OnEditExit事件,关掉模式窗体,而此时原窗体上的具有Focus的已经不是原来使用判断时的控件,个人建议使用子窗体的状态栏还是其他不具有焦点的提示方式。
4. 提交输入的时候重新进行输入检查,如果有多个OnXXXExit事件,最好先将Focus定位到没有OnXXXEnter和OnXXXExit的控件中,应同时获取尽可能所有的错误输入,并分行显示,而不是发现一个错误提示一次。
if (!IsValidData(strA))
strErr += “strA”;
if (!IsValidData(strB))
strErr += “strB”;
if (strErr != ““)
{
ShowMessage(strErr); //这时候应使用ShowMessage
return;
}
5. 注意多个关联控件,比如在计算外币折算成人民币的时候,有三个输入框,汇率,外币金额,人民币金额,三个输入框中,汇率和外币金额的改动都需要重新计算人民币金额,则两个输入框都需要加上OnXXXExit的代码,缺了一个都可能出错
相关文章推荐
- 我的航拍直升机 控制基站软件的编写历程(三)——开始读QMK-GroundStation的代码
- 我的航拍直升机 控制基站软件的编写历程(三)——开始读QMK-GroundStation的代码
- Android 在程序代码中控制软件的卸载与安装
- 软件是如何驱动硬件的,代码是怎样对计算机实现控制的?
- 浅谈思路严谨的管理软件中的用户在线状态控制【附部分C#参考代码】
- 软件代码规范笔记_代码编写
- ZedBoard学习手记(三)为自定义外设编写裸奔控制软件
- 软件开发实践-如何编写整洁的代码
- WCF4.0进阶系列—第十一章 编写代码控制配置和通信 (上)
- 上班时候,老被腾讯弹出来的新闻打扰,很少烦恼,于是编写了一小程序,用于彻底解决这个问题,并代码开源,以防杀毒软件告诉你是病毒
- 浅谈思路严谨的管理软件中的用户在线状态控制【附部分C#参考代码】
- 我的航拍直升机 控制基站软件的编写历程(3.2)—有了新进展
- 我的航拍直升机 控制基站软件的编写历程(3.5)—分析界面
- 软件试用期及试用次数控制(附部分关键代码)!
- 30 多年的软件经验,总结出 10 个编写出更好代码的技巧(精品转载)
- 关于STM32软件复位代码编写 (转)
- 游戏开发之在UE4中编写C++代码控制角色
- 软件开发的思考: -------------- 代码的规范性
- .net开源我也开>>C#远程控制软件整个项目代码发布
- 游戏开发之在UE4中编写C++代码控制角色