Office中国论坛/Access中国论坛
标题:
组合框使用教程(二)----组合框之间的联动
[打印本页]
作者:
一点通
时间:
2007-8-11 10:43
标题:
组合框使用教程(二)----组合框之间的联动
这个是论坛上问得最多的问题, 所以把它放在前面讲, 希望通过本教程能使你学会组合框之间的联动
1. 建立表, 在这不讲术了
2. 创建一个"乡镇村屯窗体", 新建一个就行了,如下图
[attach]25717[/attach]
3. 在窗体中加入三个组合框, 如下图
[attach]25718[/attach]
4. 打开"乡"组合框的属性表, 更改名称, 例如我将它改名为"乡名"
行来源类型设置为:表/查询
点击行来源右边的"..."按钮, 目的设置行来源
[attach]25722[/attach]
5. 加入地址表, 双击乡字段, 这样乡的行来源就设置完毕了
[attach]25719[/attach]
6. 按上面提到的方法设置村组合框的行来源, 在这里要添加二个字段, 一个是村, 另一个是乡, 在准则中写入条件:froms!窗体名!控件名
写入条件的目的是以乡组合框的值进行筛选, 这是关键!!
[attach]25720[/attach]
7. 以上面同样的方法设置屯组合框的行来源, 在这再增加屯字段, 在村字段的准则中再增加准则, 如下图
[attach]25721[/attach]
到止, 三个组合框的设置已经完毕, 但组合框还不可以联动的, 必须在各控件的更新事件写入刷新代码才能联动, 代码在下面讲述
8. 在乡组合框属性中, 点击更新后右边的"..."按钮, 写入事件过程
[attach]25723[/attach]
其更新后事件的代码如下:
Private Sub 乡名_AfterUpdate() '更新后事件
Me.村名.Requery '刷新村组合框的列表数据
Me.村名 = "" '清空村组合框,防止数据错乱
Me.屯名 = "" '清空屯组合框,防止数据错乱
End Sub
9. 以同样方法打开村组合框更新后事件过程, 写入如下代码
Private Sub 村名_AfterUpdate()
Me.屯名.Requery '刷新屯组合框的列表数据
Me.屯名 = "" '清空屯组合框,防止数据错乱
End Sub
OK 现在各组合框可以联动了, 回到窗体视图就可以看到效果
以下再说一下组合框中常用的三个技巧
技巧一. 单纯上面的设置, 细心的坛友会发现, 组合框展开的列表中为什么会有很多的重复数据? 如下图
[attach]25726[/attach]
可不可以显示唯一数据呢? 答案是:可以的, 方法如下:
打开行来源设置界面, 如下图, 在空白处右击, 打开一个设置窗体
[attach]25725[/attach]
将唯一值的默认值否改为是, 如下图, 然后关闭
[attach]25727[/attach]
再回到窗体视图, 看看是不是全部的数据变成唯一值了?
[attach]25728[/attach]
技巧二. 可不可以当控件获得焦点时自动打开列表呢? 这样可以实现纯键盘操作, 不用点击箭头, 答案也是可以的
打开控件的属性, 在"获得焦点"的事件过程中写入代码, 代码如下:
Private Sub 乡名_GotFocus() '获得焦点事件
Me.乡名.Dropdown '展开列表数据
End Sub
OK 再回到窗体视图, 是不是获得焦点的控件会自动打开列表? 再按一下键盘的向下键, 是否可以用键盘选择数据?
技巧三. 当组合框输入数据时, 在打开的列表中可否高亮显示对应的数据? 答案同样可以
打开控件的属性, 将"自动展开"设置为:是, 这样在组合框输入数据时, 对应最接近的数据就会高亮显示, 不信的话你自己试下就知了
[attach]25729[/attach]
这一节已讲完, 请学员自己练习一下, 看能不能实现我给你的附件功能, 一定要练习一下噢, 不然不会加深认识的
[attach]25730[/attach]
作者:
duomu
时间:
2007-8-11 20:06
我在组合框中绑定了两列,第1列为数据列,也是该组合框的值,第二列为文本列,为显示列,我的目的是通过输入,筛选第二列,来达到最终选取第一列的值到组合框,输入到一个临时表中,但现在的问题,输入后,下拉框内接近的项有时不出现高亮,输入正确的文本值,报错,可能说得不太清楚,具体请看附件,打开‘员工产量输入’窗体
[attach]25737[/attach]
[attach]25738[/attach]
作者:
duomu
时间:
2007-8-11 20:08
不好意思,老传不上,却多上传,请站长,删除第一个。
作者:
青苹
时间:
2007-8-13 19:19
谢谢一点通老师,这节教程学习啦。
作者:
tmtony
时间:
2007-8-13 21:02
很不错,对网友很有帮助
作者:
wang1950317
时间:
2007-8-15 16:28
一点通老师,因您讲义上是列表框,示列中是组合框,我这儿好像使用列表框无法使用获得焦点的代码:“Dropdown ”,是不是列表框为组合框之误?
作者:
一点通
时间:
2007-8-15 16:50
是的, 是笔误, 已改正
作者:
qsdys
时间:
2007-8-15 21:17
已经学习过,受益匪浅。谢谢!
作者:
fannky
时间:
2007-8-17 16:09
不错不错,润金了
1、之前联动都是写代码,DataSourse赋值,其实可以这样简单的
2、显示唯一值还可以在查询设计视图里使用“汇总——分组”,效果一样
作者:
laiguiyou
时间:
2007-8-22 17:12
象一点通老师致敬。讲得很细心。
作者:
归尘
时间:
2007-8-23 10:21
谢谢一点通老师,这是我最需要的,辛苦了.
作者:
归尘
时间:
2007-8-25 08:24
标题:
谢谢一点通!
[attach]25949[/attach]
原帖由
qsdys
于 2007-8-15 21:17 发表
已经学习过,受益匪浅。谢谢!
这是我的作业,
作者:
ranor
时间:
2008-8-1 12:22
学习下
作者:
hayhay
时间:
2008-8-1 12:52
已经学习过,谢谢!
作者:
wjw8216
时间:
2008-8-1 19:56
谢谢!学习了.
作者:
gaofei186
时间:
2008-8-1 20:11
向你学习
作者:
gaofei186
时间:
2008-8-1 20:14
看一看好了
作者:
liyifeikafu
时间:
2008-8-12 11:10
谢谢,学到了很多东西
作者:
wqing
时间:
2008-8-22 23:04
不错不错
作者:
tytill
时间:
2008-9-2 15:47
收藏,学习了
作者:
0377
时间:
2008-10-30 21:02
good
作者:
0377
时间:
2008-10-30 21:05
老师,解压码是什么啊?下了打不开啊
作者:
bctiao
时间:
2008-11-20 23:02
新手报到,学习了。谢谢。
作者:
dai1216
时间:
2009-2-24 15:10
不错的教程,这样学起来比较快一点!
作者:
ghfmac
时间:
2009-2-24 22:35
!!!!!!!!!!!!!!!!!!!!!!!!!!!
作者:
mo_on214
时间:
2009-3-5 14:21
老师讲的很好,谢谢!
我自己做出现了一点问题,请老师指点.
两列数据:大类、小类,通过大类筛选小类,这个功能可以实现,但是在出现的小类供选择项中,用鼠标点击,不管选择哪一项,都是第一项的结果。但是键盘输入却可以得到自己想要的选项。请问哪里出错了。
作者:
edms
时间:
2009-3-7 10:07
版主的组合框只能输入一次。
比如:窗体中,ID1我输入某某乡某某村某屯后,添加新数据,ID2的时候再输入另一个乡的时候,上面输入的某某乡也会变成后面输入的乡。也就是说如果添加十条数据,则都会变成重复一个乡,重复一个村,重复一个屯。
作者:
shangrilar
时间:
2009-3-13 12:52
谢谢分享,学习ing.........................
作者:
阿六爱狗
时间:
2009-3-24 14:02
太有帮助了
作者:
阿六爱狗
时间:
2009-3-24 14:09
感谢共享
作者:
鱼求雨
时间:
2009-3-31 22:45
很牛的东东,谢谢,
作者:
52wish
时间:
2009-4-8 20:41
真的很不错!谢谢拉!
作者:
jingyun9999
时间:
2009-4-15 23:14
大家分享谢谢
作者:
鱼求雨
时间:
2009-5-1 22:05
真棒的讲课!!这可需要耐心的,十分感谢老师
作者:
lyliyu
时间:
2009-5-9 13:39
我要成为ACCESS高手
作者:
huangdexun
时间:
2009-6-4 14:37
老师讲得很简练。只需用SQL查询语句即能实现。
作者:
cookyliang
时间:
2009-6-24 14:19
学习了,谢谢!
作者:
cookyliang
时间:
2009-6-24 14:35
学到好东西了,谢谢老师
作者:
阿尔法
时间:
2009-7-7 11:23
谢谢,正困惑这个呢。
作者:
mztao1993
时间:
2009-7-12 17:20
众人众人
作者:
amocvv
时间:
2009-7-14 12:38
学习学习,收藏了
作者:
风啸啸
时间:
2009-7-14 18:18
学习,谢谢。
作者:
sailing_han
时间:
2009-7-15 13:25
路漫漫长修远兮,吾将上下而求索
作者:
zhangboboz
时间:
2009-7-16 15:51
太感谢啦!!!
作者:
allthing
时间:
2009-8-8 06:32
谢谢!!
作者:
marcovin
时间:
2009-8-9 13:39
向一点通老师致敬!!!
作者:
marcovin
时间:
2009-8-9 13:48
向老师您学习,支持到底!
作者:
yzwyp
时间:
2009-8-19 09:32
太好了,最近刚开始学ACCESS ,正卡在列表框上,谢谢谢谢
作者:
yzwyp
时间:
2009-8-19 09:35
一点通老师还有其他讲座吗?在哪里能看到?谁能告诉我?谢谢
作者:
KYLELWFW
时间:
2009-8-25 23:06
谢谢
作者:
tcltyy
时间:
2009-10-14 10:04
好东西啊,感动ing
作者:
loginwjd303
时间:
2009-11-25 22:09
感谢各位老师写的教程.
作者:
lovelaceliu
时间:
2010-2-2 13:54
持续学习中,谢谢老师
作者:
z12509258
时间:
2010-4-1 15:45
受益了 谢谢
作者:
z12509258
时间:
2010-4-1 15:46
受益了 谢谢
作者:
小何
时间:
2010-6-17 10:21
已经学习过,受益匪浅。谢谢!
作者:
liu.jw
时间:
2011-7-10 04:53
一点通老师讲的非常细致,我这么愚钝的童鞋竟然明白了。哈哈
有一点想再请教下老师,在“屯”组合框“失去焦点”事件命令中怎样写一条命令将“焦点”给窗体,这样在本程序中“焦点”不会在三个组合框中循环了。
交第二讲作业
[attach]46049[/attach]
作者:
bzyyt
时间:
2011-9-19 21:31
好东西啊~ 一定好好学
作者:
@#Good_boy
时间:
2011-12-20 16:26
完全按照上面做出来的失败,第一级组合框(即乡组合框)内显示的是空白,而村组合框内显示的是乡组合框的内容,求帮助,谢谢!
作者:
yzyzyzyzyzyz
时间:
2012-1-28 13:02
新手报道,这个联动和省市县联动一些样吗
作者:
速凯科技
时间:
2012-7-3 14:05
密码
作者:
sheep204
时间:
2013-3-31 13:13
实用的技巧,谢谢老师分享.
作者:
st1988330
时间:
2013-4-16 14:36
555555 老师我咋就没做出来呢 新手,刚注册此论坛,做的表也发布到上面。大侠帮忙啊!
作者:
st1988330
时间:
2013-4-16 14:39
我做的 感觉不对啊,不能更新怎么回事,大侠解救啊
作者:
st1988330
时间:
2013-4-16 14:40
还有 老师 这下载需要解压密码,请问是多少啊?
作者:
zhaihe001
时间:
2013-8-27 10:16
谢谢,好好学习一下.
作者:
522650696
时间:
2016-4-26 20:02
谢谢一点通老师,这节教程学习啦。
作者:
mzmmzg
时间:
2016-8-25 22:37
谢谢一点通老师教程!
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/)
Powered by Discuz! X3.3