说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

VB中多级下拉列表的实现

HTML文档下载 WORD文档下载 PDF文档下载
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
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘