📄 mdltreeview.bas
字号:
Attribute VB_Name = "mdlTreeView"
Option Explicit
Public Sub TypeToTreeview(ByRef tvw As TreeView)
Dim objTypes As New CTypes
Dim i As Long
objTypes.Find , 0
Dim Nd As Node
Set Nd = tvw.Nodes.Add(, , "O0", "所有客户", "group2")
Nd.Expanded = True
Nd.Selected = True
For i = 1 To objTypes.Count
Set Nd = tvw.Nodes.Add("O0", tvwChild, "A" & objTypes.Item(i).ID, _
objTypes.Item(i).TypeName, "group")
Nd.Expanded = True
LoadSubNodes tvw, Nd, objTypes.Item(i).ID
Next i
End Sub
Private Sub LoadSubNodes(ByRef tvw As TreeView, Nd As Node, NodeID As Long)
Dim Nd1 As Node
Dim objTypes As New CTypes
Dim i As Long
objTypes.Find , NodeID
For i = 1 To objTypes.Count
Set Nd1 = tvw.Nodes.Add(Nd, tvwChild, "A" & objTypes.Item(i).ID, _
objTypes.Item(i).TypeName, "group")
Nd1.Expanded = True
LoadSubNodes tvw, Nd1, objTypes.Item(i).ID
Next i
End Sub
Public Sub ClientToTreeview(ByRef tvw As TreeView)
On Error Resume Next
Dim objClients As New CClients
objClients.Find
Dim i As Long
For i = 1 To objClients.Count
AddClientToTvw objClients.Item(i), tvw
Next i
End Sub
Public Sub AddClientToTvw(ByVal objClient As cClient, ByRef tvw As TreeView)
Dim ct As String
If objClient.Sex = Male Then
ct = "boy"
Else
ct = "girl"
End If
tvw.Nodes.Add "A" & objClient.TypeId, tvwChild, "B" & objClient.ID, objClient.Name, ct
End Sub
Public Sub AddTypeToTvw(ByVal objType As CType, ByRef tvw As TreeView)
On Error Resume Next
If objType.SuperId = 0 Then
tvw.Nodes.Add "O0", tvwChild, "A" & objType.ID, objType.TypeName, "group"
Else
tvw.Nodes.Add "A" & objType.SuperId, tvwChild, "A" & objType.ID, _
objType.TypeName, "group"
End If
End Sub
'
Public Function GetTypeFromTreeview(ByVal tvw As TreeView, _
ByRef objType As CType) As Boolean
If tvw.SelectedItem Is Nothing Then Exit Function
Dim objTypes As New CTypes
If objTypes.Find(GetID(tvw.SelectedItem.Key)).Count = 0 Then Exit Function
On Error Resume Next
Set objType = objTypes.Item(1)
GetTypeFromTreeview = (Err.Number = 0)
End Function
Private Sub tvTreeView_NodeClick(ByVal Node As MSComctlLib.Node)
End Sub
Public Function GetID(strKey As String) As Long
GetID = Val(Right(strKey, Len(strKey) - 1))
End Function
'
Private Sub RefreshButton()
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -