Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-窗体/数据页

如何控制窗体中必填字段录入的函数

时 间:2007-10-13 19:01:29
作 者:AskHeart   ID:17  城市:秦皇岛
摘 要:我们开发的软件在实际应用中,有些字段是必须输入的.而用户可能会因为操作上的原因,发生漏输入的现象,如果每个控件都用ISNULL()来判断,就需要写大量的代码,在UMV平台中有没有简单一点的方法来实现这个功能呢。
正 文:

一、源代码
Public Function fldNeed(frmName As String) As Boolean
'功能说明:我们开发的软件在实际应用中,有些字段是必须输入的.而用户可能会因为操作上的原因,发生漏输入的现象
'        这个函数可以控制用户必须输入合法数据.
'使用说明:首先需要在窗体必输控件的"控件提示文本"属性中填入"必填字段",FrmName 参数是当前操作的窗体名称.
'作者: 参考中国人提供的源代码,修改.
'日期:2007-10-13
    On Error GoTo Ziduantf_err
    Dim Ctl As Control
    For Each Ctl In Forms(frmName).Controls    '应用中可更改对应的窗体名
        If Ctl.ControlType = acComboBox or Ctl.ControlType = acTextBox or Ctl.ControlType = acCheckBox Then
            If Ctl.ControlTipText = "必填字段" And IsNull(Ctl) = True Then
                fldNeed = False
                Ctl.SetFocus
                MsgBox "请输入" & Ctl.Name & "", 64, "系统提示"
                Exit For
            Else
                fldNeed = True
            End If
        End If
    Next
Ziduantf_exit:
    Exit Function
Ziduantf_err:
    Resume Next
End Function

二、应用示例

在UMV平台的修改窗体中的关闭事件中写下如下代码,即可实现必填字段的录入效果:

Private Sub ToolbarFrm_ButtonClick(ByVal Button As Object)
'必填项提示
    If fldNeed("frmdbd_child_Edit") = False Then
        Exit Sub
    End If

    '刷新当前窗体内容
    Me.Refresh

    DoCmd.Echo False
    Forms!usysfrmMain!frmChild.SourceObject = "frmdbd_child"
    DoCmd.Echo True
    Forms!usysfrmMain!frmChild.Form.TimerInterval = 300

    '关闭窗体
    DoCmd.Close acForm, "frmdbd_child_Edit"
End Sub

三、二点提示

1、由于在修改窗体中的字段名不是中文,所以提示信息出现的是字母,你可以取中文名字,来取得好的效果。

2、在UMV平台中的新增窗体中,也可以考虑引用这种方法。

3、如果窗体视图是数据表样式,则会出现错误提示,此功能等完善。

 



Access软件网官方交流QQ群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助