changehistory.cls
来自「一个关于电脑管理汽车的软件」· CLS 代码 · 共 86 行
CLS
86 行
VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
Persistable = 0 'NotPersistable
DataBindingBehavior = 0 'vbNone
DataSourceBehavior = 0 'vbNone
MTSTransactionMode = 0 'NotAnMTSObject
END
Attribute VB_Name = "ChangeHistory"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Option Explicit
Public Gcount As Long
Public ChangeCount As Long
Private OrgItem() As Integer
Private KeyRS() As Long
Private DelKeyRS() As Long
Public KeyCount As Long
Public DelKeyCount As Long
Public Sub InitItem(ByVal Count As Long)
Dim i As Long
Gcount = Count
ChangeCount = Count
If Gcount > 0 Then
ReDim OrgItem(1 To Count)
For i = 1 To Count
OrgItem(i) = 0
Next i
End If
End Sub
Public Sub DealItem(ByVal ItemIndex As Long, ByVal State As Integer)
If Gcount > 0 Then
If ItemIndex <= ChangeCount Then
OrgItem(ItemIndex) = State
If State = -1 Then ChangeCount = ChangeCount - 1
End If
End If
End Sub
Public Function DealResult(ByVal ItemIndex As Long) As Integer
DealResult = OrgItem(ItemIndex)
End Function
Public Sub Clear()
Dim NullRS() As Long
KeyRS = NullRS
DelKeyRS = NullRS
Gcount = 0
KeyCount = 0
DelKeyCount = 0
ChangeCount = 0
End Sub
Public Sub AddRecordlstKey(ByVal VarCount As Long)
KeyCount = KeyCount + 1
ReDim Preserve KeyRS(1 To KeyCount)
KeyRS(KeyCount) = VarCount
End Sub
Public Property Get KeyRSValue(ByVal VarIndex As Long) As Long
KeyRSValue = KeyRS(VarIndex)
End Property
Public Sub DeleteKeyRS(ByVal VarIndex As Long)
If VarIndex <= KeyCount Then
DelKeyCount = DelKeyCount + 1
ReDim Preserve DelKeyRS(1 To DelKeyCount)
DelKeyRS(DelKeyCount) = KeyRS(VarIndex)
DealOrder VarIndex
End If
End Sub
Public Property Get DelKeyRSValue(ByVal VarIndex As Long) As Long
DelKeyRSValue = DelKeyRS(VarIndex)
End Property
Private Sub DealOrder(ByVal VarIndex As Long)
Dim i As Long
Dim TempCount As Long
If VarIndex < KeyCount Then
TempCount = KeyCount - VarIndex
For i = 0 To TempCount - 1
KeyRS(VarIndex + i) = KeyRS(VarIndex + i + 1)
Next i
End If
KeyCount = KeyCount - 1
End Sub
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?