由于代码中用到CurrentTable,但是执行代码的时候,当前表有的时候根本没有选择,也就是“焦点”没有落在table控件上,这时候如果执行代码,就会报错,如何加个条件判断一下呢?请老师帮我看下吧
(以下代码写在菜单的buttun click事件中)
If XXXXXXXXXXXXXXXXX Then '该条件确保保存视图的时候焦点落在了当前表上,否则引用CurrentTable会报错
Dim dr As DataRow
Dim filter As String = " [项目] = '视图控制' And [参数1] ='" & user.Name & "' And [参数2] = '" & CurrentTable.Name & "' and [参数3] = '" & CurrentTable.Form.Name & " '"
dr = DataTables("项目参数表").Find(filter)
If dr Is Nothing Then '如果找不到的话
Tables("项目参数表").AddNew()
Tables("项目参数表").Current("项目") = "视图控制"
Tables("项目参数表").Current("参数1") = user.Name
Tables("项目参数表").Current("参数2")= CurrentTable.Name
Tables("项目参数表").Current("参数3")= CurrentTable.Form.Name
Tables("项目参数表").Current("参数9") = CurrentTable.GetColVisibleWidth()
Else '如果找到的话,那么更新最新的列格式值
dr("参数9") = CurrentTable.GetColVisibleWidth()
End If
DataTables("项目参数表").Save
MessageBox.Show("保存成功!","提示")
End If
[此贴子已经被作者于2014-7-23 17:07:43编辑过]