设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 4145|回复: 5
打印 上一主题 下一主题

[表] 如何在一个下拉框中同时选择多项?

[复制链接]
跳转到指定楼层
1#
发表于 2004-7-13 07:16:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何在一个下拉框中同时选择多项?

下拉框中共有 A.B......Z 的几十个选项,我现在只能选一项,不知道该怎样设置才能同时选几项。

比如:选择A,再选B,再O或其他这样,并在下拉框中显示出A.B.O这几项。

或者有没有其他的设置方法,能达到一次选择多项并显示选择结果。



[此贴子已经被作者于2004-7-13 0:10:11编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2004-7-13 17:15:00 | 只看该作者
有一个稍微笨一点的办法:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

点击这里给我发消息

3#
发表于 2004-7-13 17:35:00 | 只看该作者
这样的控件可能要用第三方的控件了,ACCESS内置的组合框没有这个功能的,列表框倒是可以这样的。不过楼上的方法倒是一个比较好的替代方法。
4#
 楼主| 发表于 2004-7-14 02:28:00 | 只看该作者
二楼兄台的办法,我也曾想过,但可选项有几十项,而且内容的选择也是随意的,我不可能做几十个这样的选择框来选吧。而且到时候打印输出也是个问题。

有没有其他什么做法可以达到这个目的呢,选择多项后在一个框里依次显示出来,或打印时能依次打印也行。

三楼兄台您说列表框可以这样做?请问该怎样设呢。。我急呀。。但我又不熟,才第一次用。

第三方的软件又是什么呢,在哪下,能说明白些吗?

[此贴子已经被作者于2004-7-13 22:28:11编辑过]

5#
发表于 2004-7-14 07:06:00 | 只看该作者
用列表框。。。
6#
发表于 2004-7-15 00:22:00 | 只看该作者








[ 作者:cg1    转贴自:access911.net    点击数:1677    更新时间:2004-2-21    文章录入:cg1





<TABLE cellSpacing=5 cellPadding=0 width=740 align=center border=0 break-all?>



<TR>

<TD vAlign=top height=200>

<TABLE cellSpacing=0 cellPadding=10 align=left border=0>



<TR>

<TD>















专题地址:http://access911.net/index.asp?board=4&recordid=71FAB71E11DCE8F3







简述:组合框无法满足大量数据的选择以及输入工作,本文就介绍用自编程方法实现更快捷地选取输入数据地方法。









问题:



<TABLE width="100%">



<TR>

<TD width=22>

Access里面有组合框,可以很快地从多行记录中选择所需要的数据。但是如果记录超过1000-2000呢?选择就非常不方便了。我该怎么办?

回答:

<DIV>











其实很多数据都可以分类(分层)来选择,而且我们可以预先筛选数据。

以下这个示例就是用重复打开同一个窗体类来完成多层次数据的选择。

当然,还包括预先筛选数据功能。



在阅读本文前请先参考:

《新手来看:如何设计表结构便于treeview显示?》

http://access911.net/index.asp?board=4&recordid=75FABE1E12DC

一文,以了解如何定义数据表结构可以方便的分类并显示。

并阅读:

《如何将一个窗体重复打开2遍,并且每一遍打开的窗体显示不同的数据?》

http://access911.net/index.asp?board=4&recordid=72FAB11E15DC

一文,以了解 ACCESS 中一个 FORM 其实就是一个类

好了,现在开始:

1、建立一个窗体(testForm),里面有一个文本框(text0),一个按钮(Command2)。

2、建立一个窗体(selectForm),里面有一个列表框(list0)。

3、在testForm中的文本框的“更新后”事件中写入以下代码以打开品名选择窗体(selectForm),并对其中的列表框(list0)的行来源(RowSource)进行赋值。



<TABLE cellSpacing=1 cellPadding=5 100%?>



<TR>

<TD width="100%" none? TEXT-DECORATION: #f2f2f2; BACKGROUND-COLOR: solid; 1px #81a9e8 BORDER-BOTTOM: 10px; PADDING-TOP: #00284d; COLOR: BORDER-LEFT: PADDING-BOTTOM: PADDING-LEFT: 0px; MARGIN-TOP: BORDER-TOP: PADDING-RIGHT:>rivate Sub Text0_AfterUpdate()

    DoCmd.OpenForm "selectform"

    '这行代码就实现了BTYPE表的模糊检索,使用的是 WHERE 子句中的 LIKE 关键字进行通配

    Forms("selectform").List0.RowSource = "SELECT btype.soncount, btype.UserCode, btype.FullName, btype.typeId FROM btype WHERE btype.fullname like '*" & Text0.Value & "*' "

End Sub



4、在testForm中的命令按钮的“单击”事件中写入以下代码以打开品名选择窗体,按分类检索

5、然后再在testForm中输入以下代码以完成多次打开窗体本身并显示子类中数据的功能。

为了能够使代码重复利用,写了两个通用过程



<TABLE cellSpacing=1 cellPadding=5 100%?>



<TR>

<TD width="100%" none? TEXT-DECORATION: #f2f2f2; BACKGROUND-COLOR: solid; 1px #81a9e8 BORDER-BOTTOM: 10px; PADDING-TOP: #00284d; COLOR: BORDER-LEFT: PADDING-BOTTOM: PADDING-LEFT: 0px; MARGIN-TOP: BORDER-TOP: PADDING-RIGHT:>Option Compare Database

Dim f



Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

    '先设定窗体的“键预览”属性为“是”

    '本过程将加快你的输入速度

    '如果按 ESCAPE 键,就关闭窗体


    If KeyCode = vbKe
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-15 09:48 , Processed in 0.086172 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表