VB中多级下拉列表的实现

豆豆网   技术应用频道   2006年04月01日  【字号: 收藏本文

本文详细介绍VB中多级下拉列表的实现

  当需要在大量记录的数据表中定位某个记录时,为了操作方便,我们通常采用多级下拉列表的实现方式。比如我们要搜寻人事处的一个叫“黎明”的个人信息,可先在单位下拉选单中定位人事处,从而下拉出人事处的人员名单列表,最终找到“黎明”的个人信息。实现步骤:

  取单位名称表(DWMCB)中的部门编号,产生一级下拉列表。

  根据操作者的选择,从人员名单表(RYMDB)中筛选出相应部门中的所有员工,创建二级下拉列表。

  从二级列表中,定位个人信息。

  程序如下:

     ...
   Private Sub Form_Load()
   Dim str1 As String
   注释:建立连接串
   conn$="UID=caiwu;PWD=67786787;DATABASE=cwxxk; SERVER=NWIEEIC;DRIVER={SQL SERVER};DSN=注释:注释:;"
   en.rdoEnvironments(0).CursorDriver = rdUseServer
   注释:建立连接
   Set cn = en.rdoEnvironments(0).OpenConnection("", rdDriverNoPrompt, False, conn$)
   注释:从单位名称表中取部门编号,并创建一级部门列表
   Set rs = cn.OpenResultset("select dwbh,dwmc from dwmcb")
   Do While Not rs.EOF
   List1.AddItem rs("dwbh")
   rs.MoveNext
   Loop
   rs.Close
   End Sub
   注释:创建一级列表的点击事件
   Private Sub List1_Click()
   gdwbh = List1.Text
   注释:调用产生二级列表的程序
   getbmry List1.Text
   End Sub
   注释:产生二级列表
   Sub getbmry(strbm As String)
   Dim ssql As String
   注释:从rymdb中筛选出一级列表中选中的单位中的人员姓名,用于创建二级列表
   ssql = "select zgxm from gzmxk3 where dwbh=" && "注释:" && strbm && "注释:;"
   Set rs = cn.OpenResultset(ssql, rdOpenKeyset)
   List2.Clear
   Do While Not rs.EOF
   List2.AddItem rs("zgxm")
   rs.MoveNext
   Loop
   rs.Close
   End Sub

作者:陆明秀    责编:豆豆技术应用

正在加载评论...