Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

[5分]请教一个代码意思

殷小宝  发表于:2013-02-03 22:17:32  
复制

下面一段代码中有一句“ If ctl.ControlName =Split(strControls, ",")(i) And IsNull(ctl) Then”,这句意思是如果控件名找到且控件为空,这句不太好理解,请诸老师释疑。谢谢。

Function funIsNull(ByVal frmForm As Form, ByVal strControls As String) As Integer

      Dim ctl As Control

    A = UBound(Split(strControls, ","))

    For i = 0 To A

        For Each ctl In frmForm.Controls

            If ctl.ControlName =Split(strControls, ",")(i) And IsNull(ctl) Then

                MsgBox ctl.ControlName & "为空,请输入" & ctl.ControlName & "!", vbExclamation, "提示:"

                ctl.SetFocus

                funIsNull = True

                Exit Function

            End If

        Next ctl

    Next i

 

Top
殷小宝 发表于:2013-02-03 22:21:02
既然控件名在窗体上有了,为什么控件又为空呢?百思不得其解。

金宇 发表于:2013-02-04 08:53:06

很好理解啊,如果窗体上找到对应的控件,并且控件的值是空的,那就需要弹出消息对话框提醒用户输入数据。



殷小宝 发表于:2013-02-04 11:14:09
"控件的值是空的"是何意?控件有值吗?望老师告之。

殷小宝 发表于:2013-02-04 12:02:34
知道了,这个函数的意义是:只要某个控件没有填.就出现提示.就像以前常用的那样:if isnull(me.姓名) then……

殷小宝 发表于:2013-02-04 12:05:42
以前我理解为:这个函数是为了判断窗体上是否存在某控件,因此陷入了那个误区。

总记录:5篇  页次:1/1 9 1 :