TreeView对象选择某节点下所有节点与子节点
//////////////////////////////////////////////////////////////////////////////
//
// 函数: of_deselectall
//
// 属性: public
//
// 参数: long al_handle
//
// 返回: integer
//
// 功能:
// 如果是子节点,选择本级节点下的所有子节点~
//
//////////////////////////////////////////////////////////////////////////////
//声明
long ll_hdl[]
long ll_parent
long ll_handle
integer li_cnt
boolean lb_result
treeviewitem lt_tvi
string label
li_cnt = 1
ll_hdl[1] = al_handle
if GetItem(ll_hdl[li_cnt], lt_tvi) = -1 then return -1
if not lt_tvi.children then
return 1
end if
do while li_cnt > 0
if GetItem(ll_hdl[li_cnt], lt_tvi) = -1 then return -1
//代码
//写判断
if lt_tvi.children then
li_cnt ++
ll_hdl[li_cnt] = FindItem(ChildTreeItem!, ll_hdl[li_cnt - 1])
else
ll_hdl[li_cnt] = FindItem(NextTreeItem!, ll_hdl[li_cnt])
end if
do while ll_hdl[li_cnt] <= 0
li_cnt --
if li_cnt = 0 then exit
ll_hdl[li_cnt] = FindItem(NextTreeItem!, ll_hdl[li_cnt])
if ll_hdl[li_cnt] = -1 then CONTINUE
lb_result = false
ll_handle = ll_hdl[li_cnt]
ll_parent = FindItem(ParentTreeItem!,ll_handle)
DO UNTIL ll_parent = FindItem(RootTreeItem!, 0)
if al_handle = ll_parent then
lb_result = true
end if
ll_handle = ll_parent
ll_parent = FindItem(ParentTreeItem!,ll_handle)
loop
if lb_result = true then
CONTINUE
else
li_cnt = 0
exit
end if
loop
loop
return 0
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
· SQL Server 2025 AI相关能力初探
· 为什么 退出登录 或 修改密码 无法使 token 失效
2010-03-14 PowerBuilder9对中文字符串的处理方法