搬家第25天-citectVBA删除listview控件选定的行

前面的博客记录了listview初始化、添加checkbox的脚本设置。如果我们希望能够删除listview指定的行,可以按照以下思路:首先计算勾选了多少行,接下来判断勾选的行数是不是大于0,如果大于0,就循环一下过程,直到勾选行数为0:让行号为1,如果当前行被勾选,就删除当前行,行号不变,勾选行数减1,如果当前行没有勾选,不删除当前行,当前行号加1。

假设当前页面为page2,listview控件访问名是page2_AN6,初始化该控件
写下面的citectVBA脚本
Sub DellselRow()
Dim CheckedCount,RowCount,i
RowCount= page2_AN6.ListItems.Count
For i=1 To RowCount
If page2_AN6.listitems(i).checked=True Then
   CheckedCount=CheckedCount+1
    End If
Next
i=1
If CheckedCount<>0 Then
Do While CheckedCount>0
If page2_AN6.listitems(i).checked=True Then
   page2_AN6.ListItems.remove(i)
   CheckedCount=CheckedCount-1
Else
    i=i+1
End If  
Loop
End If
End Sub
画面上放置
一个按钮,调用上面的脚本
civba call DellselRow()
保存编译运行,假设勾选以下内容:
按下删除按钮,看到以下效果
 
 
posted @ 2021-02-22 20:43  来自金沙江的小鱼  阅读(458)  评论(0编辑  收藏  举报