treeview控件之我用
来源:互联网 发布:如何评价王思聪 知乎 编辑:程序博客网 时间:2024/04/28 17:41
这是我常用的treeview控件代码
说明:
1、treeview控件名称:tvwDB_ALar
2、表BasicName存放“报警类别”,三级分类(如:户内-气表-泄漏)
3、BasicName.code6为第一类,BasicName.code4为第二类,code1,code2就是明细编号和名称。(若继续分类,在循环里再加)
4、build0、build1、build2为关联ImageList的图标名称
5、Set Data_ALar = SQLFind(strSQL, ConData)是建立ADODB.Recordset的自定义类
- VB code
- Private Data_ALar As ADODB.Recordset
Private Data_ALar2 As ADODB.Recordset
Private Data_ALar3 As ADODB.Recordset
Private Data_ALarEd As ADODB.Recordset
Private Data_ALarSS As ADODB.Recordset
Private intINDexA, intINDexB As Integer
Private Data_ALarNo As String - Private Sub tvwInti()On Error GoTo Data_Err With tvwDB_ALar .Nodes.Clear .Sorted = True Set mNode = .Nodes.Add() .LabelEdit = False End With With mNode ' Add first node. .Text = "报警类别" .Tag = "分类" .Image = "build1" .Expanded = True End WithstrSQL = "select DISTINCT code6 from BasicName where typeflag='报警' order by code6" 'and doflag='1' Set Data_ALar = SQLFind(strSQL, ConData) Data_ALar.MoveFirst '一类(户内、户外、公建单位) Do While Not Data_ALar.EOF Set mNode = tvwDB_ALar.Nodes.Add(1, tvwChild, Data_ALar.Fields(0) & "", CStr(Data_ALar.Fields(0)), "build1") intINDexA = mNode.IndexstrSQL = "select DISTINCT code4 from BasicName where typeflag='报警' and code6='" & Trim(Data_ALar.Fields(0)) & "' order by code4" Set Data_ALar2 = SQLFind(strSQL, ConData) Data_ALar2.MoveFirst '二类(气表、管道) Do While Not Data_ALar2.EOF Set mNode = tvwDB_ALar.Nodes.Add(intINDexA, tvwChild, "HW." & Data_ALar2.Fields(0), Data_ALar2.Fields(0) & "", "build0") intINDexB = mNode.Index mNode.Tag = Data_ALar2.Fields(0)strSQL = "select code1,code2 from BasicName where typeflag='报警' and code6='" & Trim(Data_ALar.Fields(0)) & "' and code4='" & _ Trim(Data_ALar2.Fields(0)) & "' order by code1" ' and doflag='1' Set Data_ALar3 = SQLFind(strSQL, ConData) Data_ALar3.MoveFirst '三类(明细:泄漏、损坏) Do While Not Data_ALar3.EOF Set mNode = tvwDB_ALar.Nodes.Add(intINDexB, tvwChild, "HeW." & Data_ALar3.Fields(0), Data_ALar3.Fields(1) & "", "build2") Data_ALar3.MoveNext Loop Data_ALar2.MoveNext Loop Data_ALar.MoveNext LoopExit SubData_Err: If Err.Number = 3021 Or Err.Number = 13 Or Err.Number = 340 Then Resume Next Else MsgBox "出错代码:" & Format(Err.Number) & Chr(13) & "提示:" & Err.Description, vbSystemModal + vbCritical, Me.Caption End IfEnd Sub
- Public Function SQLFind(strSQL, conDB) As ADODB.Recordset
On Error GoTo Data_Err
Dim RS_tt As ADODB.Recordset
Set RS_tt = New ADODB.Recordset
RS_tt.Open strSQL, conDB, adOpenKeyset, adLockOptimistic, adCmdText
Set SQLFind = RS_tt
Set RS_tt = Nothing
Exit Function
Data_Err:
If Err.Number = 3021 Or Err.Number = 13 Then
Resume Next
Else
'MsgBox "出错代码:" & Format(Err.Number) & Chr(13) & "提示:" & Err.Description
End If
End Function
- treeview控件之我用
- 控件之TreeView
- TreeView 控件之不回发操作
- TreeView 控件之不回发操作
- TreeView 控件之不回发操作
- C#窗体控件之treeview
- PB控件属性之TreeView
- 最近我在用treeview+自定义SiteMapDataSource控件读取数据库数据做导航列。
- 最近我在用treeview+自定义SiteMapDataSource控件读取数据库数据做导航列。
- .net服务器控件使用总结之TreeView
- Windows应用程序高级控件之TreeView
- TreeView控件
- TreeView 控件
- TreeView控件
- TreeView控件
- TreeView控件
- TreeView控件
- TreeView 控件
- Concurrent (1)
- 窗口弹出之showModalDialog应用
- 浅论Hibernate分页的“真”与“假”
- Concurrent (2)
- 2.6.20后添加访问系统调用的方式
- treeview控件之我用
- Concurrent (3)
- 遍历矩阵格问题
- GridView 分页代码
- 内核中的调度与同步
- 网页正文抽取演示(包含组件下载地址、原理说明文章地址)
- Concurrent (4)
- struts1验证框架
- Concurrent (5)