分享一下,树形数据窗口双击那一层自动展开或收缩(数据窗口DoubleClicked事件中处理)

分享一下,树形数据窗口双击那一层自动展开或收缩(数据窗口DoubleClicked事件中处理)
//TreeView Datawindow 双击收缩
//双击那一层对象则自带收缩(不用去点 + / - )


string ls_dwProcessing,ls_band
//树型dw的展开收缩处理
ls_dwProcessing=this.describe('DataWindow.Processing')
If ls_dwProcessing='8'  or ls_dwProcessing='9' Then
    ls_band=this.describe(dwo.Name+".band")
    //tree.level.1
    //n_cst_string 
    If pos(ls_band,'tree.level.') >0 Then
        n_cst_string  lstr_c
        string ls_parstr[],ls_bandrow[]
        int li_level
long ll_row
        lstr_c.of_parsetoarray(ls_band,'.',ls_parstr)//PFC 对象 把字串 分配成数组(也可以自行写)
        If upperbound(ls_parstr[])>=3 Then
            If isnumber(ls_parstr[3])Then
                li_level=integer(ls_parstr[3])
                //describe("evaluate(' first( getrow() for group 1 )',"+string(getrow())+")")
                //describe("evaluate(' first( getrow() for group 1 )',"+first( getrow() for group 1 )+")")
                //ll_row= this.getrow()//long(describe("evaluate(' first( getrow() for group "+string(li_level)+" )',compute_3)"))
                //取双击的所在 band 的行
                ls_band=GetBandAtPointer()
                lstr_c.of_parsetoarray(ls_band,'~t',ls_bandrow)
                If upperbound(ls_bandrow[])>=2 Then 
                    ll_row=long(ls_bandrow[2])
                    If ll_row=0 Then ll_row= this.getrow()
                Else
                    ll_row= this.getrow()
                End If
                If this.isexpanded( ll_row, li_level) Then 
                    this.CollapseAllChildren(ll_row,li_level)
                    //this.CollapseAll()
                Else
                    this.ExpandAllChildren(ll_row,li_level)
                    //this.ExpandAll()
                End If
                
            End If
        End If
    End If

End If



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值