【access源码示例】通用必填项检查函数及友好提示功能实现示例
时 间:2012-06-16 14:51:31
作 者:红尘如烟 ID:10768 城市:成都
摘 要:数据录入编辑是基于数据库的系统中最常用到的功能,本示例中就其中用到的2项技术或技术进行演示。
难度级别:中
阅读要求:要求有一定VBA编程基础,懂得简单的代码运用。
正 文:
难度级别:中
阅读要求:要求有一定VBA编程基础,懂得简单的代码运用。
数据录入编辑是基于数据库的系统中最常用到的功能,本示例中就其中用到的2项技术或技术进行演示。
示例要点:
1. 通用必填项检查函数。
有不少人在保存数据前检查必填项是否为空时,都会将每个必填项写上下面这样的代码:
If IsNull(Me.客户编码) Then MsgBox "客户编码为必填项,不允许为空。", vbExclamation, "提示" Me.客户编码.SetFocus Exit Sub End If
If IsNull(Me.客户名称) Then |
这样的做法的不足之处在于,如果必填项比较多,这样的代码就要写很多,并且每个录入编辑窗体都需要写上一堆这样的代码。这样代码既不够简洁,设计、修改、维护都不方便,比较麻烦。而实际上从上面的代码我们可以看出,其实除了控件名称之外,其它的完全都一样。因此我们完全可以将其提炼做成一个通过的函数。
示例中提供的CheckRequired函数即是实现这一目的,并完成一些相应的细节完善。能实现的功能大概有:
1)该函数会检查所有进行了标记的控件,判断是否为空(包括空值Null和空字符串””均视为空),能够自动将焦点定位到为空的控件,如果是组合框还会自动展开下拉列表;
2)根据输入控件的绑定标签标题,取得提示给用户的名称,并会自动去除标签标题后面的冒号、前后的星号(如果有的话),以应对控件名和需要提示给用户的名称不一致的情况,使提示信息更加友好;
3)如果控件不可见或不可用,检查时会自动忽略,如果控件属于选项卡,而选项卡或选项卡页不可见或不可用,检查时也会自动忽略,以应对一些业务数据逻辑相对复杂的情况。
注意,使用时需要对要验证的输入控件设置标记,默认为,当然也可以设为其它任意标记,如 <必填项> 。不过使用默认标记时,函数调用可以写为:
=CheckRequired(Me) '完整写法为 =CheckRequired(Me, "Required") |
而使用其它非默认标记时,必须采用完整写法,第2个参数不能忽略,如:
=CheckRequired(Me, "<必填项>") |

*当然如果有什么无法正确处理的情况,欢迎大家向我提出以便进行改进,给更多的人提供方便。
2. 用标签代替MsgBox消息框。
将消息在标签控件中显示,并发出和MsgBox相同的声音反馈来代替MsgBox消息框,这样避免强制用户进行确认,实现更友好的用户体验。
附 件:
Access软件网QQ交流群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 统计当月之前(不含当月)的记录...(03.11)
- 【Access Inputbo...(03.03)
- 按回车键后光标移动到下一条记录...(02.12)
- 【Access Dsum示例】...(02.07)
- Access对子窗体的数据进行...(02.05)
- 【Access高效办公】上月累...(01.09)
- 【Access高效办公】上月累...(01.06)
- 【Access Inputbo...(12.23)
- 【Access Dsum示例】...(12.16)

学习心得
最新文章
- 仓库管理实战课程(9)-开发往来单...(04.02)
- 仓库管理实战课程(8)-商品信息功...(04.01)
- 仓库管理实战课程(7)-链接表(03.31)
- 仓库管理实战课程(6)-创建查询(03.29)
- 仓库管理实战课程(5)-字段属性(03.27)
- 设备装配出入库管理系统;基于Acc...(03.24)
- 仓库管理实战课程(4)-建表操作(03.22)
- 仓库管理实战课程(3)-需求设计说...(03.19)
- 仓库管理实战课程(2)-软件背景和...(03.18)
- 仓库管理实战课程(1)-讲师介绍(03.16)