Private Function GetNextKey() As String
Dim sNewKey As String
Dim iHold As Integer
Dim i As Integer
On Error GoTo errhandles
iHold = Val(TreeView1.Nodes(1).Key)
For i = 1 To TreeView1.Nodes.Count
If Val(TreeView1.Nodes(i).Key) > iHold Then
iHold = Val(TreeView1.Nodes(i).Key)
End If
Next
iHold = iHold + 1
sNewKey = CStr(iHold) & "_"
GetNextKey = sNewKey
Exit Function
errhandles:
GetNextKey = "1_"
Exit Function
End Function
我知道这串代码是得到一个新建节点的键值,但里面的代码我不知道什么意思,有哪位高手可以给我注释一下??万分感谢,万分火急!
VB TreeView1新建节点问题,请各位高手指点
答案:2 悬赏:20 手机版
解决时间 2021-02-09 11:50
- 提问者网友:送舟行
- 2021-02-09 05:54
最佳答案
- 五星知识达人网友:污到你湿
- 2021-02-09 06:08
Option Explicit
Private Function GetNextKey() As String '定义一个名为GetNextKey函数,返回值为String字符串类型 Dim sNewKey As String '定义一个名为sNewKey的String字符串类型变量
Dim iHold As Integer '定义一个名为iHold的Integer整数类型变量
Dim i As Integer '定义一个名为i的Integer整数类型变量
On Error GoTo errhandles '我要执行下面的代码啦,如果出现错误就蹦到errhandles那块去
iHold = Val(TreeView1.Nodes(1).Key) '把TreeView1.Nodes(1).Key转换为整数型,赋值给iHold
For i = 1 To TreeView1.Nodes.Count '循环,从i=1到i=TreeView1.baidu.Count
If Val(TreeView1.Nodes(i).Key) > iHold Then '如果将TreeView1.Nodes(i).Key转换为整数型后的值>iHold
iHold = Val(TreeView1.Nodes(i).Key) '将TreeView1.Nodes(i).Key转换为整数型,赋值给iHold
End If '退出判断
Next '退出循环
iHold = iHold + 1 '把iHold + 1后在赋值给iHold
sNewKey = CStr(iHold) & "_" '把iHold转换为字符串类型,后面加上"_",赋值给sNewKey
GetNextKey = sNewKey '把sNewKey赋值给GetNextKey的返回值
Exit Function '退出函数
errhandles: '我就是出错的时候才执行的 ^_^
GetNextKey = "1_" '把"1_"赋值给GetNextKey的返回值
Exit Function '退出函数
End Function '结束函数
'TreeView1.Nodes(i).Key 是TreeView1里第i个节点的键值
'TreeView1.Nodes(i).Count 是TreeView1里节点的总数
'哈哈,我多有耐心,给分给分
Private Function GetNextKey() As String '定义一个名为GetNextKey函数,返回值为String字符串类型 Dim sNewKey As String '定义一个名为sNewKey的String字符串类型变量
Dim iHold As Integer '定义一个名为iHold的Integer整数类型变量
Dim i As Integer '定义一个名为i的Integer整数类型变量
On Error GoTo errhandles '我要执行下面的代码啦,如果出现错误就蹦到errhandles那块去
iHold = Val(TreeView1.Nodes(1).Key) '把TreeView1.Nodes(1).Key转换为整数型,赋值给iHold
For i = 1 To TreeView1.Nodes.Count '循环,从i=1到i=TreeView1.baidu.Count
If Val(TreeView1.Nodes(i).Key) > iHold Then '如果将TreeView1.Nodes(i).Key转换为整数型后的值>iHold
iHold = Val(TreeView1.Nodes(i).Key) '将TreeView1.Nodes(i).Key转换为整数型,赋值给iHold
End If '退出判断
Next '退出循环
iHold = iHold + 1 '把iHold + 1后在赋值给iHold
sNewKey = CStr(iHold) & "_" '把iHold转换为字符串类型,后面加上"_",赋值给sNewKey
GetNextKey = sNewKey '把sNewKey赋值给GetNextKey的返回值
Exit Function '退出函数
errhandles: '我就是出错的时候才执行的 ^_^
GetNextKey = "1_" '把"1_"赋值给GetNextKey的返回值
Exit Function '退出函数
End Function '结束函数
'TreeView1.Nodes(i).Key 是TreeView1里第i个节点的键值
'TreeView1.Nodes(i).Count 是TreeView1里节点的总数
'哈哈,我多有耐心,给分给分
全部回答
- 1楼网友:woshuo
- 2021-02-09 07:26
首先在模块里要用poublic声明个变量,以便于各个窗体共同区分使用。
其次你要在程序中区分还是把不同的权限放到硬盘,可放的地方很多,有txt、数据库、excel、ini等文件,也可以放注册表,如果是后者,在用户登录或窗体加载的时候要读其权限,放到上述变量中进行区分。如果用程序区分,那就做成死的了。
这个控件编程的时候,要充分利用缩进,尽量与显示的位置对应起来,便于阅读,比如:
'新建一个窗体,上面放一个treeview和一个listview,一个listimage
'listimage控件要添加8张以上一样大小的icon文件
'treeview1和listview的图像列表都设置成listimage1
private sub form_load()
treeview1.style = tvwtreelinesplusminuspicturetext
treeview1.labeledit = tvwmanual
treeview1.checkboxes = true
listview1.view = lvwicon
listview1.borderstyle = ccfixedsingle
treeview1.nodes.add , , "r", "学籍管理信息系统", 1
treeview1.nodes.add "r", tvwchild, "r1", "学生基本信息", 2
treeview1.nodes.add "r1", tvwchild, "r11", "个人信息", 3
treeview1.nodes.add "r1", tvwchild, "r12", "家庭信息", 3
treeview1.nodes.add "r", tvwchild, "r2", "学习成绩", 4
treeview1.nodes.add "r2", tvwchild, "r21", "专业成绩", 5
treeview1.nodes.add "r2", tvwchild, "r22", "英语成绩", 5
treeview1.nodes.add "r", tvwchild, "r3", "社团活动", 6
treeview1.nodes.add "r3", tvwchild, "r31", "政治面貌", 7
treeview1.nodes.add "r3", tvwchild, "r32", "获奖情况", 7
其中上面的代码可以用if..then或select case 分开,就是不同的权限了
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯