-- 作者:unverse
-- 发布时间:2012/11/3 23:48:00
-- [推荐]批量判断窗口控件为空的简易代码
如果一个窗口在保存的时候有N个控件需要保存前判断是否为空,传统判断方式如下:
If e.Form.Controls("ComboBox4").value=Nothing Then MessageBox.Show("请选择支票类别,请输入","温馨提示",MessageBoxButtons.OK,MessageBoxIcon.Information) e.Form.Controls("ComboBox4").Select Return ElseIf e.Form.Controls("ComboBox3").value=Nothing Then MessageBox.Show("收款单位不能为空,请输入","温馨提示",MessageBoxButtons.OK,MessageBoxIcon.Information) e.Form.Controls("ComboBox3").Select Return 。。。。
N个重复代码
。。。。
End If
代码会很长。维护起来也不方便,重复的太代码太多,可以用以下代码替代:
Dim kjmc() As String \'控件名称 Dim tsmc() As String \'提示名称 Dim kjmcjh As String = "dt_rq,汇款人全称,汇款人账号,汇款人_省,汇款人_市,汇款人行名,金额,收款人全称,收款人账号,收款人省,收款人市,收款人行名" \'控件名称集合 Dim tsmcjh As String = "票据日期,汇款人全称,汇款人账号,汇出地点(省),汇出地点(市),汇出行名称,金额大写,收款人全称,收款人账号,收款人(省),收款人(市),收款人行名" \'megbox提示信息集合 kjmc = kjmcjh.split(",") tsmc = tsmcjh.Split(",") For i As Integer=0 To kjmc.Length-1 If e.Form.Controls(kjmc(i)).value Is Nothing Then MessageBox.Show(tsmc(i) & "不能为空,请检查") e.Form.Controls(kjmc(i)).Select Return End If Next
用以上代码可轻松搞定,需要判断的控件再多,只需要在kjmcjh 添加控件的名称,和tsmcjh (messagebox提示值)即可,代码精简了很多,,希望对大家有用。。。
[此贴子已经被作者于2012-11-4 12:38:18编辑过]
|