7,763
社区成员
发帖
与我相关
我的任务
分享
Private Sub CreateMenuTree()
On Error GoTo ex
Dim adoValue As New ADODB.Recordset
Dim ProjCode As String
Dim ProjName As String
Dim CoCode As String
Dim TradeName As String
TVMenu.Nodes.Clear
Set TradeMenu = New ADODB.Recordset
Set InterfaceMenu = New ADODB.Recordset
adoValue.Open "select * from kss_proj order by proj_code", db.dbConnect, adOpenStatic, adLockReadOnly, adCmdText
'一级目录
On Error Resume Next
With adoValue
While Not .BOF And Not .EOF
ProjCode = ""
ProjName = ""
ProjCode = Trim(.Fields("proj_code").Value)
ProjName = Trim(.Fields("proj_name").Value)
TVMenu.Nodes.Add , , "1" & ProjCode, "[" & ProjCode & "]" & ProjName, "file", "openfile"
'二级目录
TradeMenu.Open "select * from kss_trdinfo where proj_code = '" & ProjCode & "' order by co_code", db.dbConnect, adOpenStatic, adLockReadOnly, adCmdText
On Error Resume Next
With TradeMenu
While Not .BOF And Not .EOF
CoCode = ""
TradeName = ""
CoCode = Trim(.Fields("co_code").Value)
TradeName = Trim(.Fields("trade_name").Value)
TVMenu.Nodes.Add "1" & ProjCode, tvwChild, ProjCode & CoCode, "[" & ProjCode & "+" & CoCode & "]" & TradeName, "file", "openfile"
TradeMenu.MoveNext
Wend
End With
TradeMenu.Close
Set TradeMenu = Nothing
adoValue.MoveNext
Wend
End With
adoValue.Close
Set adoValue = Nothing
Exit Sub
ex:
MsgBox "取数据时错误[" & Err.Description & "]"
End Sub
Private Sub CreateMenuTree()
On Error GoTo ex
Dim adoValue As New ADODB.Recordset
Dim TradeMenu As ADODB.Recordset
Dim ProjCode As String
Dim ProjName As String
Dim CoCode As String
Dim TradeName As String
TVMenu.Nodes.Clear
Set TradeMenu = New ADODB.Recordset
adoValue.CursorLocation = adUseClient
adoValue.Open "select * from kss_proj order by proj_code", db.dbConnect, adOpenStatic, adLockReadOnly, adCmdText
'一级目录
With adoValue
While Not .BOF And Not .EOF
ProjCode = ""
ProjName = ""
ProjCode = Trim(.Fields("proj_code").Value)
ProjName = Trim(.Fields("proj_name").Value)
TVMenu.Nodes.Add , , "1" & ProjCode, "[" & ProjCode & "]" & ProjName, "file", "openfile"
'二级目录
If TradeMenu.State = adStateOpen Then TradeMenu.Close
TradeMenu.CursorLocation = adUseClient
TradeMenu.Open "select * from kss_trdinfo where proj_code = '" & ProjCode & "' order by co_code", db.dbConnect, adOpenStatic, adLockReadOnly, adCmdText
With TradeMenu
While Not .BOF And Not .EOF
CoCode = ""
TradeName = ""
CoCode = Trim(.Fields("co_code").Value)
TradeName = Trim(.Fields("trade_name").Value)
TVMenu.Nodes.Add "1" & ProjCode, tvwChild, ProjCode & CoCode, "[" & ProjCode & "+" & CoCode & "]" & TradeName, "file", "openfile"
TradeMenu.MoveNext
Wend
End With
adoValue.MoveNext
Wend
End With
adoValue.Close
Set adoValue = Nothing
Exit Sub
ex:
MsgBox "取数据时错误[" & Err.Description & "]"
End Sub
Private Sub treeViewView()
On Error Resume Next
'treeViewbackColor
Dim i As Integer, sumNum As Integer ', Values()
Dim sql As String
sql = "SELECT zdmc FROM ip" 'order by zdmc asc"
openTheTable (sql)
If rst.BOF And rst.EOF Then
Dim tmp As Byte
tmp = MsgBox("无法生站点树,请先设置站点名称!", vbYesNo, "站点名称库为空")
If tmp = 6 Then
Form2.Show 1
MsgBox "请重新启主程序"
End
ElseIf tmp = 7 Then
Exit Sub
End If
End If
rst.MoveFirst
'初始化treeview
TreeView1.HideSelection = True
TreeView1.Indentation = 19 * Screen.TwipsPerPixelX '缩进距离
TreeView1.LabelEdit = tvwManual
TreeView1.LineStyle = tvwRootLines
'---==以下设置节点==---
Dim Node1 As Node, Node2 As Node
Dim dzd_tmp1 As String, dzd_tmp2 As String '大站点
Dim xzd_tmp1 As String '小站点
'填充treeview
Do While Not rst.EOF
DoEvents
If InStr(rst!zdmc, ".") = 0 Then
MsgBox "站点名称添加错误", vbOKOnly, "站点中没有分隔附."
Form2.Show 1
treeViewView
Exit Sub
End If
dzd_tmp1 = Left(rst!zdmc, InStr(rst!zdmc, ".") - 1)
Set Node1 = TreeView1.Nodes.Add(, , , dzd_tmp1, 1) '添加大站点
Do
DoEvents
dzd_tmp2 = Left(rst!zdmc, InStr(rst!zdmc, ".") - 1)
If dzd_tmp2 <> dzd_tmp1 Then
Exit Do
End If
xzd_tmp1 = Mid(rst!zdmc, InStr(rst!zdmc, ".") + 1)
Set Node2 = TreeView1.Nodes.Add(Node1.Index, _
tvwChild, , xzd_tmp1, 2) '添加小站点
rst.MoveNext
If rst.EOF Then Exit Do
Loop
Node1.Expanded = False
Loop
End Sub