首页 | 社区 | 博客 | 招聘 | 文章 | 新闻 | 下载 | 读书 | 代码
亲,您未登录哦! 登录 | 注册

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

本栏文章均来自于互联网,版权归原作者和各发布网站所有,本站收集这些文章仅供学习参考之用。任何人都不能将这些文章用于商业或者其他目的。( Pfan.cn )

编程爱好者论坛

本栏最新文章