请帮助检查表箱[英] Please help in Checklistbox

问题描述

您好!

目前在两个复选框中工作,一个是区域 chklistbox 1 和子区域 chklistbox 2.

当我从 chklistbox1 检查一个或两个区域时,我成功地填充了 chklistbox 1 中的区域,所有子区域都将填充在子区域复选框 2 中.我也设法做到了.但是我现在的问题是当我取消选中选定区域时.我需要删除与该区域相关的所有子区域.

以下是我的代码.

非常感谢和需要您的所有帮助.

Sub ListSubAreaDim rs,sql, i, j, areanamefor i = 0 to chklistarea.Items.Count-1If chklistarea.Checked(i) = True then'chklistsubarea.items(j) = chklistarea.Checked(i)areaname = chklistarea.Items(i)结束 如果下一个set rs=createobject("adodb.recordset")sql = "SELECT * FROM v_area_subarea where c_area_name ='"&arename &"' 按 c_sub_area_name 排序"开放式RS,SQLchklistsubarea.清除if not rs.eof thenchklistsubarea.Items.Add rs.Fields("c_sub_area_name").Valuers.movenext循环 直到 rs.eof结束 如果rs.closeEnd Sub

推荐答案

你已经这样做了.下面的代码将删除子区域复选框列表中的所有项目.

chklistsubarea.Clear()



快速提问:
.NET 有一个非常强大的 DB 概念(ADO.NET),但您还在使用 ADODB?

您好,谢谢您的回复.实际上,我正在使用的应用程序是 SalesLogix,后端的方法代码类似于 vb 代码.我需要做的是删除 chklistbox2 中仅与 checklistbox1 相关的数据.请帮忙.您的意见将受到高度赞赏.谢谢

使用以下代码完成它现在正在工作::)

Sub ListSubArea

        dim rs
        dim sql
        dim i
        dim areaname


        areaname = ""
        chklistmainagent.Clear

        for i = 0 to chklistarea.Items.Count-1
             If chklistarea.Checked(i) = True then
               areaname =  Areaname & "''" & chklistarea.Items(i) & "'',"
             End if
         Next

            if areaname <> "" then
                areaname = left(areaname,len(areaname)-1)
            Else
                chklistsubarea.Clear
                Exit sub
            End if

           set rs=createobject("adodb.recordset")
                sql = "SELECT * FROM v_area_subarea where c_area_name in ("& areaname &") order by c_sub_area_name"
                openrs rs,sql

                chklistsubarea.Clear

                if not rs.eof then
                    do
                     chklistsubarea.Items.Add rs.Fields("c_sub_area_name").Value

                     rs.movenext
                    loop until rs.eof
                End if

        rs.close

End Sub

本文地址:https://www.itbaoku.cn/post/1395006.html