Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > 综合其它

拷贝或移动列表框或组合框中的内容

时 间:2008-05-30 09:00:19
作 者:UMVSOFT整理   ID:16  城市:江阴
摘 要:拷贝或移动列表框或组合框中的内容

正 文:

拷贝或移动列表框或组合框中的内容
在做数据据库程序时,通常会要求用户将数据从一个列表框移动到别一个列表框中。

下面的子程序可以让你轻松实现这一功能。同时还提供参数,指定操作是移动数据

(不保留原数据),还是拷贝数据(保留数据的副本在原列表框或组合框中);并且还

可以选择是全部移动或拷贝数据,还是只移动或拷贝用户选定的部分。


参数 值 说明

FromCtl 源列表框或组合框名 源列表框或组合框

ToCtl 目的列表框或组合框名 目的列表框或组合框

strMode 可选参数,默认情况下只拷贝

选中的项目

- 移动选中的项目

ALL 拷贝所有的项目,不需选中

-ALL 移动所有的项目,不需选中


源程序如下:


Public Sub CopyComboList(FromCtl As Control, ToCtl As Control, Optional

strMode As String)


On Error Resume Next


Dim intN As Integer


Screen.MousePointer = vbHourglass


If strMode <> "" Then

strMode = UCase(strMode)

End If


With FromCtl


If TypeName(FromCtl) = "ListBox" Then

For intN = .ListCount - 1 To 0 Step -1

If .Selected(intN) or InStr(strMode, "ALL") Then

ToCtl.AddItem .List(intN)

ToCtl.ItemData(ToCtl.NewIndex) = .ItemData(intN)

If InStr(strMode, "-") = 1 Then

.RemoveItem (intN)

End If

Next

Else

For intN = .ListCount - 1 To 0 Step -1

ToCtl.AddItem .List(intN)

ToCtl.ItemData(ToCtl.NewIndex) = .ItemData(intN)

If InStr(strMode, "-") = 1 Then

.RemoveItem (intN)

Next

End If

End With


Screen.MousePointer = vbDefault


End Sub


Access软件网官方交流QQ群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助