-----------本人开发的--VSFlexGrid<编辑扩展类>---------------
----------说明文档-----------------
'----------方法----------------------------------
' rt.AddRow '在最后结尾处自动添加新行
' rt.SetImeForm '在界面中设置列输入法
' rt.RemoveNullRow '删除空的无效的行
' '-------属性------------------------
' rt.DownSpiralCount '返回/设置 盘旋总次数 O.A = Count
' rt.DownSpiralRows '设置 在那几行盘旋 O.A = Rows
' rt.EditCol '返回/设置 编辑的列 字符串格式
' rt.EditColDef '返回/设置 编辑列的默认值
' rt.EditCols '返回 编辑列总数
' rt.EECol '返回编辑的列 可遍历型 v = O.A(EditColIndex)
' rt.ErrBackColor '返回/设置 错误行的背景色
' rt.ErrForeColor '返回/设置 错误行的文字色
' rt.Grid '设置表格控件到本类中
' rt.IsChange '返回/设置 表格是否编辑过
'rt.IsNoBeep = True '返回/设置 是否禁止警告音
' rt.IsErrRowValidate '返回/设置 行验证错误时是否整行标记
' rt.IsNoEdit '是否禁止编辑
' rt.IsNoEditColDefault '返回/设置 是否禁止设置默认值
' rt.IsNoIme '返回/设置 是否禁止表格列输入法设置
' rt.IsNoNewRow '返回/设置 是否禁止在表格结尾自动添加新行
' rt.IsErrNoSetFocus '返回/设置 是否验证错误时禁止本类中的表格控件转移焦点
' rt.IsTopSpiral '返回/设置 是否禁止在表格顶部盘旋
' rt.IsValidate '返回 当前编辑的内容是否通过验证了
' rt.LoadEditColDef '设置 装入编辑列默认值字符串
' rt.LoadiME '设置 装入编辑列输入法配置字符串
' rt.MouseRowBackColor '返回/设置 行移动热追踪的背景色
' rt.MouseRowForeColor '返回/设置 行移动热追踪的文字色
' rt.UpSpiralCount ''返回/设置 按键弹起时在表格间使用键盘最后几行之间的盘旋次数
' '-------事件-----------------------
'Private Sub rt_ValidateRowEdit(ByVal SelRow As Long, ByVal SelCol As Long, ByVal Row As Long, ByVal Col As Long, Cancel As Boolean)
'行验证事件-----离开行后发生
'SelEditRow 最后编辑的行
'SelEditCol 最后编辑的列
'Row 当前行
'Col 当前列
'Cancel 是否禁止通过本次行验证
'Cancel = true 则禁止通过行编辑验证
'禁止后回到未通过编辑的行
'End Sub
'Private Sub rt_ChangeEdit(ByVal Row As Long, ByVal Col As Long, ByVal EditText As String, ByVal OldText As String, Cancel As Boolean, SetOldText As Boolean)
'编辑文本改变事件-------编辑的文本改变后发生
' Row 当前编辑的行
'Col 当前编辑的列
'EditText 当前编辑的文本
'OldText 上次通过验证时的文本
'Cancel 是否禁止通过编辑验证 true 禁止通过
'SetOldText 未通过验证是否返回到上次通过验证的数据 true 返回上次验证通过的数据
'End Sub
'Private Sub rt_EvNewRow(ByVal Row As Long)
'新增行事件
'End Sub
'Private Sub rt_SetImeSave(ByVal iMEText As String, ByVal IsNoIme As Boolean)
'在界面中设置输入法后的通知事件 , 以便保存输入法配置文本
'iMEText 输入法配置文本
'IsNoIme 是否禁用输入法配置
'End Sub
'Private Sub rt_ValidateEdit(ByVal Row As Long, ByVal Col As Long, ByVal EditText As String, ByVal OldText As String, Cancel As Boolean, SetOldText As Boolean)
'单元验证事件-----离开编辑单元后发生
'Row 当前编辑行
'Col 当前编辑列
'EditText 当前编辑的文本
'OldText 上次通过验证的文本
'Cancel 是否禁止通过编辑验证 true 禁止通过
'SetOldText 未通过验证是否返回到上次通过验证的数据 true 返回上次验证通过的数据
'End Sub
'Private Sub rt_ValidateErrToolTip(ByVal EditMode As ToolTips, ByVal Row As Long, ByVal Col As Long, SetToolTipText As String)
'发生编辑验证错误时在行中冒泡提醒事件-----编辑后验证未通过时发生
'EditMode 发生错误验证的类型 0 文本改变验证 1 单元文本验证 2 行验证
'Row 当前编辑行
'Col 当前编辑列
'SetToolTipText 设置 冒泡需要显示的字符串
'作用---鼠标移动的错误行后冒泡显示错误的提示信息
'End Sub
'-----------------应用示例--------------------------
'Dim WithEvents rt As GridEdit
'Form_Load
'Set rt = New GridEdit
'Set rt.Grid = VSFlexGrid1
''---------以下均可设置编辑列--------------------------
'rt.EditCol = "2|3|6|8" ' 设置编辑的列
'rt.EditCol = "2,3,6,8" ' 设置编辑的列
''-----------设置编辑列默认值----------------------
' '-------一列一列的设置---------------
' rt.EditColDef(2) = 1
' rt.EditColDef(4) = 5
' rt.EditColDef(3) = "的凤飞飞"
' rt.EditColDef(8) = "xyz"
' '----------装入字符串配置进行设置-------这里装入后将覆盖以前的设置--------
' rt.LoadEditColDef = "EditCol,默认值|EditCol,默认值|EditCol,默认值|EditCol,默认值"
' rt.LoadEditColDef = "2,3|5,7|6,xyz|9,我问问"
''-------------装入输入法配置--------------------------
' rt.LoadiME = "编辑列号,输入法<中/英>" 输入法<中英> = 0 or 1 ,0=英文 1 = 中文
' rt.LoadiME = "EditCol,0/1|EditCol,0/1|EditCol,0/1|EditCol,0/1"
'End Sub
遍历可编辑的列
for i =0 to rt.EditCols-1
' EditCol=rt.EECol(EditColIndex))
next i
'输入法设置界面
'编辑时标记错误行的颜色-并在此错误行冒泡----
'出现错误时,焦点单元移动不了
'如果是行验证未通过则行焦点移动不了,
'只有通过验证才可以编辑下一个单元或下一行的数据
'