新单序时簿插件开发问题
语法
Private Sub Object_ListFillRow (ByVal lRow As Long, ByVal RowData As Object, ByVal HeadDict As KFO.Dictionary, CellData As String, BackColor As Long, ContinueRaise As Boolean)
部分
描述
Object
ListEvents对象的一个实例。
lRow
Long类型。发生事件的行的行号。
RowData
Object对象。实际上是本行所有数据的 ADODB.Recordset 对象。
HeadDict
KFO.Dictionary 对象。当前单元格(字段)的信息。
CellData
String类型。当前单元格数据。
BackColor
Long类型。当前行的背景色。
ContinueRaise
Boolean类型。在下一行该单元格填充的时候是否发生 ListFillRow 事件。
注释
每个行的每个可见的单元格(字段)的数据填充都会发生此事件。
此事件是否发生,取决于 EnableListFillRowEvents 属性的设置。详细请参考 EnableListFillRowEvents属性的相关说明。
更改 CellData 参数的值,可以改变单元格的实际填充数据。
更改 BackColor 参数的值,可以改变行的背景色。可以使用 RGB 函数得到色值。
ContinueRaise参数值默认为 True。 更改此值为 False,则下一行这个单元格填充的时候不会再发生 ListFillRow 事件。
注意:如果要使用RowData 参数,插件工程还必须引用 Microsoft ActiveX Data Objects Library。
示例
根据填充的字段的值,实现:a、将1、2、3…对应成星期一、星期二、星期三…;b、将6、7对应的行背景设为绿色,其余为白色:
Public Sub Show(ByVal oListInterface As Object)
'ListEvents 接口实现
'注意: 此方法必须存在, 请勿修改
Set m_ListInterface = oListInterface
'设置 EnableListFillRowEvents 属性,允许激发 ListFillRow 事件
m_ListInterface.EnableListFillRowEvents = True
End Sub
Private Sub m_ListInterface_ListFillRow(ByVal lRow As Long, ByVal RowData As Object, ByVal HeadDict As KFO.IDictionary, CellData As String, BackColor As Long, ContinueRaise As Boolean)
If HeadDict("FKey") = "FText" Then
Select Case CellData
Case “1”:
CellData = "星期一"
BackColor = vbWhite
Case “2”:
CellData = "星期二"
BackColor = vbWhite
Case “3”:
CellData = "星期三"
BackColor = vbWhite
Case “4”:
CellData = "星期四"
BackColor = vbWhite
Case “5”:
CellData = "星期五"
BackColor = vbWhite
Case “6”:
CellData = "星期六"
BackColor = vbGreen
Case “7”:
CellData = "星期日"
BackColor = vbGreen
Case Else
BackColor = vbWhite
End Select
End If
ContinueRaise = True
End Sub
ListFillRow 事件
序时簿的行填充数据时发生。
新单序时簿插件开发问题
本文2024-09-16 16:34:01发表“k3wise知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3wise-10096.html