Access列表框.docx
- 文档编号:3785191
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:19
- 大小:30.14KB
Access列表框.docx
《Access列表框.docx》由会员分享,可在线阅读,更多相关《Access列表框.docx(19页珍藏版)》请在冰豆网上搜索。
Access列表框
对列表框、组合框和下拉列表框进行自定义
1.在窗体或数据访问页的“设计”视图 中,确保已选中列表框 (列表框:
提供一列选项的控件。
列表框由一个列表和一个可选标签组成。
)、组合框 (组合框:
窗体上用来提供列表框和文本框的组合功能的一种控件。
用户既可以键入一个值,也可以单击控件以显示一个列表,并从该列表中选择一项。
)或下拉列表框 (下拉列表框:
数据访问页上的一种控件,单击时显示可供选择的值列表。
不能在下拉列表框中键入值。
),然后单击工具栏上的“属性”
以打开该控件 (控件:
允许用户控制程序的图形用户界面对象,如文本框、复选框、滚动条或命令按钮等。
可使用控件显示数据或选项、执行操作或使用户界面更易阅读。
)的属性表。
2.执行下列操作之一:
更改列表框、组合框或下拉列表框中的排序次序
如果使用向导创建列表框、下拉列表框或组合框,MicrosoftAccess将自动按照第一个可见列对构成列表的行进行排序。
如果想指定另外一种排序次序,或者如果已将该控件的“行来源”属性设为已保存的查询,则可以使用下列两个过程中的一个。
注释 在独立的数据访问页或在与当前未打开的数据库连接的数据访问页中,“向导”是不可用的。
这种情况下,必须自行创建列表框或下拉列表框。
o若要更改窗体上控件的排序次序,请单击“数据”选项卡,在“行来源”属性框旁边单击“生成”按钮
,打开“查询生成器”或“SQL语句生成器”,并指定所需的排序次序。
o若要更改数据访问页上控件的排序次序,可按所需的排序次序创建查询,然后在数据访问页的ListRowSource属性框中,从列表中选择查询。
绑定列表框、组合框或下拉列表框中的列
o在窗体中 在列表框或组合框的“绑定列”属性框中,指定一个对应于列表框或组合框中列所在位置的数字。
例如,键入1可将列表框或组合框中的第一列绑定到“控件来源”属性中指定的基础字段上。
在计数列数时请包含隐藏的列。
如果将“绑定列”属性设为0,则McrosoftAccess保存列表索引 (列表索引:
列表中项目编号的顺序,第一项从0算起,第二项为1,依此类推。
),而不保存其中一个列的值。
这在保存一系列数字而不是列表值的时候是很有用的。
o在数据访问页中 在列表框或下拉列表框的ListBoundField属性框中,输入与列表框或下拉列表框中列所在的位置对应的字段的名称。
将SQL语句用作窗体上列表框或组合框的行来源
可能需要用SQL语句 (SQL字符串/语句:
用于定义SQL命令(如SELECT、UPDATE或DELETE)的表达式,可以包含子句(如WHERE和ORDERBY)。
SQL字符串/语句通常用在查询和聚合函数中。
)(而不是已保存的查询)作为窗体上列表框或组合框的行来源,这样就不会在“数据库”窗口 (“数据库”窗口:
在打开Access数据库或Access项目时出现的窗口。
它显示用于新建数据库对象和打开现有对象的快捷方式。
)中显示查询。
但是,基于SQL语句的列表框和组合框会比基于已保存查询的列表框和组合框速度更慢。
o单击“行来源”属性旁的“生成”按钮
,打开“查询生成器”。
o在“查询生成器”中,单击“视图”菜单上的“SQL视图”。
o在“SQL语句”窗口中,选定整个SQL语句,按Ctrl+C进行复制,然后关闭“查询生成器”。
o单击“行来源”属性框,按Ctrl+V将SQL语句粘贴到属性框中。
o删除“数据库”窗口中原来的查询。
隐藏窗体上列表框或组合框中的列
o在“列宽”属性框中,为要隐藏的列(一列或多列)输入0。
例如,假定一个两列绑定组合框包含“供应商ID”列和“供应商名称”列,且“供应商ID”是列表中的第一列。
若要隐藏“供应商ID”,则可按下列图例设置“列宽”属性。
将“供应商ID”列(第一列)设为0以隐藏它。
为“供应商名称”列指定宽度。
“供应商ID”列是绑定列,即使隐藏起来也是如此。
注释 在组合框中,当列表未显示时,第一个可见的列将显示在组合框的文本框部分。
例如,在前一个示例中,因为“供应商ID”列隐藏,因此将显示“供应商名称”列。
如果“供应商ID”列没有隐藏,则它是唯一显示的列。
为窗体上的组合框添加列标题
o在“列标题”属性框中,单击“是”以显示列标题。
只有当列表打开时,才会显示组合框中的列标题。
如果组合框或列表框是基于记录源 (记录源:
窗体、报表或数据访问页的基础数据源。
在Access数据库中,它可以是表、查询,也可以是SQL语句。
在Access项目中,它可以是表、视图、SQL语句,也可以是存储过程。
)的,则MicrosoftAccess使用记录源的字段名称作为列标题。
如果组合框或列表框是基于固定值列表的,则MicrosoftAccess使用值列表的前x项数据(“行来源”属性)作为列标题,其中,x等于“列数”属性中设置的数字。
关闭窗体上组合框的“所键即所填”功能
o在“自动展开”属性框中单击“否”。
当“自动展开”属性设为“否”时,必须从列表中选择一个值或键入完整的值。
设置窗体上组合框的列表框部分的宽度
o在“列宽”属性框中,用当前的度量单位(在Windows“控制面板”中设置)输入需要的宽度。
若要使用非默认的度量单位,请在数字后加上度量单位,例如,输入“2厘米”。
请确保为滚动条留出足够的空间。
组合框的列表框部分可以比文本框部分宽,但不能比它窄。
默认设置(“自动”)使列表框与组合框的文本框部分宽度相同。
设置窗体上组合框中可显示的最大行数
o在“列数”属性框中输入数字。
如果实际的行数超过“列数”属性中指定的数字,则在组合框中将显示垂直滚动条。
将组合框输入项限制在窗体上组合框的列表部分的项目内
o在“限于列表”属性框中单击“是”。
注意
如果显示在组合框中的第一列不是绑定 (绑定控件:
在窗体、报表或数据访问页上使用的控件,用来显示和修改来自表、查询或SQL语句的数据。
控件的控件来源属性存储了控件绑定到的字段的名称。
)列,即使“限于列表”属性设为“否”,MicrosoftAccess仍会限制条目数不超过列表的项数。
如果“限于列表”属性设为“否”,则当输入项不在列表内时,如果组合框是绑定的,则输入项会存储在基础字段中,而不会添加到列表中。
若要向列表中添加新的输入项,请使用“不在列表中”属性和NotInList事件。
于创建用于查阅数值的列表框、组合框或下拉列表框
若要创建用于查阅数值的列表框、下拉列表框 或组合框,需确定以下两点:
∙列表中的行来自哪里?
∙用户在列表框、下拉列表框或组合框中选择选项时,MicrosoftAccess将如何处理这个值?
对于列表框、下拉列表框或组合框,其中的行可以是在创建列表框、下拉列表框或组合框时就输入的固定的值列表(用于列表内容不常更改时),也可以来自记录源 (用于经常更新列表时)。
例如,对某个列表框可以使用一个固定列表,其中包含的项有“先生”、“小姐”或“夫人”。
另一方面,如果有一个“产品”窗体并且要在列表框中显示一个产品供应商的列表,但该列表根据列表框所基于的记录源而经常变动,则该列表框应查阅“供应商”表中的值,并显示最新的可供选择供应商列表。
输入产品。
从列表中选取供应商。
当用户从列表框、下拉列表框或组合框中选择值时,MicrosoftAccess可以完成下列两件事情之一:
Access可以在某个表(此表与列表的源表是不相同的)中存储已选择的值;Access也可以将数值传给另一个控件 。
例如,对于前面图例中的“供应商”列表框,如果用户选择了“康富食品”,Access将在“供应商”表中查阅“康富食品”的主键 (主键:
具有唯一标识表中每条记录的值的一个或多个域(列)。
主键不允许为Null,并且必须始终具有唯一索引。
主键用来将表与其他表中的外键相关联。
)值(供应商ID),并且将“产品”表中当前记录的“供应商ID”字段(外键 (外键:
引用其他表中的主键字段(一个或多个)的一个或多个表字段(列)。
外键用于表明表之间的关系。
))设为同样的值。
该值就是存储的值。
由于Access根据列表框中的选定内容来存储值,因此列表框是绑定 的。
(注意:
“供应商”表中的“供应商名称”的值将在列表框中显示但不存储)。
另一方面,如果希望Access用列表框、下拉列表框或组合框中选择的值来决定其他控件(一个或多个)的内容,则可以创建一个未绑定 (未绑定控件:
未与基础表、查询中的字段或SQL语句连接的控件。
未绑定控件通常用于显示信息性文本或装饰性图片。
)列表框、下拉列表框或组合框。
例如,可以创建一个用来查找数据访问页 (数据访问页:
Access发布的网页,包含与数据库的连接。
在数据访问页中,可查看、添加到、编辑以及操作数据库中存储的数据。
这种页也可以包含来自其他源(如Excel)的数据。
)上相关记录的列表框或组合框。
也可以创建一个用来筛选窗体上另一列表框或组合框中记录的列表框或组合框。
应创建列表框、组合框还是下拉列表框?
若要决定是创建列表框、组合框还是下拉列表框,必须考虑在什么地方使用控件 、控件在窗体或数据访问页上如何显示,以及希望用户如何使用。
每种控件都有自己的优点:
列表框的优点 在窗体和数据访问页上都可以使用列表框。
列表随时可见,并且控件的值只限于列表中的可选项。
若要快速地移到以特殊字母开头的第一个值,可以直接键入该字母。
在用窗体输入或编辑数据时,不能添加列表中没有的值。
组合框的优点 组合框可用在窗体上。
由于这种列表只有在打开时才显示内容,因此该控件在窗体上占用的地方较小。
若要在组合框中快速地找到某个值,可以键入该值的前几个字母。
同时,也可以控制是可以在列表中输入任何值,还是只能输入在列表中有匹配项的值。
下拉列表框的优点 下拉列表框可用在数据访问页上。
因为这种列表只在打开时才显示内容,所以该控件在数据访问页上占用的地方较小。
控件的值只限于列表中的可选项。
若要快速地移到以特殊字母开头的第一个值,可以直接键入该字母。
应使用表、查询、SQL语句还是函数来提供值?
列表框、组合框或下拉列表框的行来源提供了要显示的值。
大多数情况下,当利用向导创建列表框、下拉列表框或组合框时,可以将表用作行来源。
在下列情况下应使用查询 (查询:
有关表中所存数据的问题,或要对数据执行操作的请求。
查询可以将多个表中的数据放在一起,以作为窗体、报表或数据访问页的数据源。
):
∙要将计算字段包含在列表框、下拉列表框或组合框中。
例如,可以键入下列表达式将名字和姓氏连接起来:
姓名:
[姓氏]&""&[名字]。
可以在查询中定义该计算字段,然后将该字段包含在列表框、下拉列表框或组合框中。
∙要在列表框、组合框或下拉列表框中包含多个表中的字段。
在窗体中利用向导从表或查询中选择字段时,MicrosoftAccess将根据所选字段创建SQL语句 ,并将列表框或组合框的“行来源”属性设为该SQL语句。
在数据访问页中利用向导从表或查询中选择字段时,Access将列表框或下拉列表框的ListRowSource属性设为所选的表或查询。
还可以自行设置列表框、组合框或下拉列表框的行来源。
例如,可以将行来源设为表或已保存的查询,也可以将行来源设为SQL语句以便在“数据库”窗口 中不显示查询。
但是,基于SQL语句的列表框和组合框会比基于已保存查询的列表框和组合框要慢一些。
此外,当列表中的值经常变动时,或者如果值不存储在数据库中,则还可以将函数 (Function过程:
返回一个值并可用于表达式的过程。
用Function语句可声明一个函数,并用EndFunction语句结束该函数。
)用作行来源的类型。
例如,可以编写一个函数来将一系列日期填入列表框内,每个日期距离现在日期有一定的天数。
创建列表框、组合框或下拉列表框的方法
向导 利用向导是一种很容易的列表框、组合框或下拉列表框创建方法。
不过,在独立的数据访问页中,或当数据访问页指向非当前打开的其他数据库时,向导是不可用的。
这种情况下,必须自行创建列表框或下拉列表框。
查阅字段 可以创建这样的列表框、组合框或下拉列表框:
它们与MicrosoftAccess数据库 中或(与MicrosoftSQLServer2000或MicrosoftAccessSQLServerPersonalDesktopEngine中的数据库连接的)MicrosoftAccess项目 (MicrosoftAccess项目:
与MicrosoftSQLServer数据库连接且用于创建客户/服务器应用程序的Access文件。
项目文件中不包含任何数据或基于数据定义的对象(如表或视图)。
)中的某个“查阅”字段 (“查阅”字段:
Access数据库中用在窗体或报表上的一种字段。
要么显示自表或查询检索得到的值列表,要么存储一组静态值。
)进行了绑定 。
创建“查阅”字段时,只需创建列表框或组合框一次。
此后即可在任何窗体上使用同样的查阅列表。
如果不打算在多个窗体中使用同一个查阅字段,则可以在窗体“设计”视图 中使用“列表框向导”或“组合框向导”。
不能用“查阅”字段在数据访问页中创建列表框或下拉列表框。
自行创建 如果希望自行设置控件的属性,则您可能不想用向导或查阅字段而直接创建列表框、组合框或下拉列表框。
例如,如果准备将行来源的类型指定为函数,则您可能就不想使用向导或查阅字段。
在查询中将表的组合框显示为文本框(MDB)
注释 本主题中的信息仅适用于MicrosoftAccess数据库(.mdb)。
改变字段在查询中的显示方式并不影响字段在基础表中的显示方式。
1.在“设计”视图)中打开查询。
2.在查询的设计网格 (设计网格:
在查询“设计”视图或“高级筛选/排序”窗口中设计查询或筛选时所用的网格。
对于查询,该网格以前称为“QBE网格”。
)中,用鼠标右键单击要更改字段上的任何位置,然后单击快捷菜单上的“属性”。
3.单击“查阅”选项卡。
4.在“显示控件”属性框中,单击“文本框”。
指定列表框或组合框中默认值的所在行
在窗体中,可以指定列表框或组合框中的哪一行是自动选定的。
该过程不应用于数据访问页。
1.在“设计”视图 中打开窗体。
2.确保已选择组合框,然后单击“窗体设计”工具栏上的“属性”
。
3.在“默认值”属性框中,键入[组合框名称].ItemData(n),其中n是要作为默认值的所在行号。
ItemData属性是从零开始的,所以如果要使用列表中第一行为默认值,请键入:
ItemData(0)。
例如,如果要指定“SupplierCombo”组合框的第一列为组合框的默认值,请在“默认值”属性框中键入[SupplierCombo].ItemData(0)。
注释 如果要在MicrosoftAccess数据库(.mdb) 的表“设计”视图 中为查阅组合框指定一个默认值,请在默认值属性中为外键 (外键:
引用其他表中的主键字段(一个或多个)的一个或多个表字段(列)。
外键用于表明表之间的关系。
)输入一个默认值。
例如,如果在“产品”表中有一个“供应商ID”的外键字段,则单击“供应商ID”字段,并在窗口下方的“默认值”属性框中输入一个有效的供应商编号。
下一次将“供应商ID”字段添加到窗体时,Access将自动设置该字段的默认值。
列表框、组合框、下拉列表框和“查阅”字段的属性
可用来在窗体上创建或修改列表框和组合框的属性
使用向导来创建列表框或组合框时,MicrosoftAccess将为控件 设置一些属性。
如果不想用向导来创建控件,则可以直接使用这些属性;或者可以使用向导来创建控件,然后修改这些属性使这些控件按预期方式运行。
若要查找有关下列属性的详细信息,请单击属性表中的属性,然后按F1。
在Access数据库 中,或在与MicrosoftSQLServer2000或MicrosoftSQLServer2000DesktopEngine连接的Access项目 中,也可以使用这些属性对“查阅”字段 进行自定义。
属性
说明
行来源类型
与“行来源”属性一同使用。
使用该属性可以指定行来源的类型(“表/查询”、“表/视图/存储过程”、“值列表”、“字段列表”或VisualBasic函数 ),然后可以在“行来源”属性中指定实际行来源。
行来源
如果“行来源类型”设为“表/查询”,则指定表、查询或SQL语句的名称。
如果“行来源类型”设为“值列表”,则指定列表的输入项(多项之间以分号隔开)。
如果“行来源类型”设为“字段列表”,则指定表或查询的名称。
如果“行来源类型”设为函数名,则显示为空白。
绑定列
在绑定 多列列表框或组合框中,指定哪一列与“控件来源”属性中指定的基础字段绑定。
当在列表中选择一项时,该列中的数据将存储在字段中。
如果隐藏了该列,则该数据可能会与列表上显示的数据有所不同。
列数
指定列表框或组合框中的列数。
可以通过将“列宽”属性设为0,使某一列包含在列表中但并不显示出来。
对于从表或查询中查阅值的列表,可能需要这样做。
可以在列表中包含ID字段,但将它隐藏起来。
在组合框内,列表中第一个可见列显示在组合框的文本框部分。
列宽
指定每列的宽度,各数值之间以分号隔开。
输入0可以隐藏一列。
输入分号而没有输入度量表示使用默认值(大约1英寸或2.5厘米,视Windows“控制面板”中设置的度量单位而定)。
在组合框中,第一个可见列显示在控件的文本框部分。
在组合框中输入的任何值的数据类型必须与第一个可见列的数据类型相同或兼容。
列标题
确定列表框或组合框是否有列标题。
如果组合框或列表框是基于记录源 (记录源:
窗体、报表或数据访问页的基础数据源。
在Access数据库中,它可以是表、查询,也可以是SQL语句。
在Access项目中,它可以是表、视图、SQL语句,也可以是存储过程。
)的,Access就使用记录源的字段或列名作为列标题。
如果组合框或列表框是基于固定值列表的,MicrosoftAccess则使用值列表的前x项数据(“行来源”属性)作为列标题,其中,x等于“列数”属性中所设的数字。
只有在列表拉下时,组合框中才会显示标题。
列表宽度
指定组合框的列表框部分的宽度。
列表行数
指定显示在组合框的列表框部分的最大行数。
限于列表
确定组合框是接受输入的任何文本还是只接受与列表中的值匹配的文本。
如果想允许将用户输入的新值添加列表中,请将该属性设为“否”,并且在“不在列表中”属性中附加一个事件过程 (事件过程:
自动执行的过程,以响应用户或程序代码启动的事件或系统触发的事件。
)。
不在列表中
当NotInList事件发生时,运行附加的事件过程。
可以使用该属性自动将新值添加到列表中。
该属性在表“设计”视图中的“查阅”选项卡上不可用。
自动展开
指定Access是否自动填入与您在组合框中键入字符匹配的值。
该属性在表“设计”视图中的“查阅”选项卡上不可用,Access会自动为“查阅”字段填入值。
但可以根据“查阅”字段更改组合框的“自动展开”属性。
显示控件
指定在向窗体中添加“查阅”字段 时,Access默认创建的控件的类型(组合框或列表框)。
该属性仅在表“设计”视图中的“查阅”选项卡上可用。
可用来在数据访问页中创建或修改列表框或下拉列表框的属性
使用向导在数据访问页 中创建列表框或下拉列表框 时,Access会为控件设置某些属性。
如果不想用向导来创建控件,则可以直接使用这些属性;或者可以使用向导来创建控件,然后修改这些属性使这些控件按预期方式运行。
若要查找有关下列属性的详细信息,请单击属性表中的属性,然后按F1。
属性
说明
ListRowSource
数据源中记录集的名称,该数据源为列表框或下拉列表框提供值和文本。
ListBoundField
在绑定列表框或下拉列表框中,指定哪个字段与“列表行来源”属性指定的基础数据源绑定。
当在列表中选择一项时,该列中的数据将存储在字段中。
ListDisplayField
在绑定列表框或下拉列表框中,指定“列表行来源”中的一个字段的名称,“列表行来源”提供了与“列表绑定字段”值相对应的显示值。
创建列表框、组合框或下拉列表
列表框、组合框或下拉列表 可以是一个绑定 或未绑定的控件,并且它可以在一个固定的列表中或在表、查询中查找值。
若要创建一个在表或查询中查找值的绑定列表框、组合框或下拉列表,请确保窗体或数据访问页基于一个包含外键字段或“查阅”字段的记录源 。
使用向导创建列表框、组合框或下拉列表
1.在“设计”视图 中打开窗体或数据访问页。
2.在工具箱 (工具箱:
由一些可以用在“设计”视图中向窗体、报表或数据访问页添加控件的工具组成的集合。
在页“设计”视图中可用的工具箱与在窗体和报表“设计”视图中可用的工具箱不同。
)中确保选定 (选中:
选中工具栏按钮后,即使指针没有停留在该按钮上,它的周围也会有一个边框。
)了“控件向导”工具
。
3.单击工具箱中的“列表框”工具
、“组合框”工具
或“下拉列表”工具
。
4.在窗体或数据访问页上,单击要放置列表框、组合框或下拉列表 的位置。
在向导对话框中,按照说明进行操作并选择所需选项。
操作方法:
1.当向导询问您希望如何为控件获得值时,请执行下列操作之一:
▪如果想显示几乎不进行更改的一串固定值,则单击“自行键入所需的值”。
▪如果想显示记录源中的当前数据,则单击“使列表框在表或查询中查阅数值”。
2.按照说明指定值的显示方式。
3.如果正在窗体中创建列表框或组合框,当向导询问在选择值时需要MicrosoftAccess执行何种操作时,请执行下列操作之一:
▪如果正在创建未绑定控件,则单击“记住该数值供以后使用”。
▪如果正在创建绑定控件,则单击“将该数值保存在这个字段中”并选择想要的字段。
4.单击“完成”。
5.在数据访问页中,单击“页设计”工具栏上的“属性”
,打开控件的属性表。
在ControlSource属性框中,选择要将列表框或下拉列表绑定到的字段。
创建绑定到表中“查阅”字段的列表框、组合框或下拉列表
可以使用表中的“查阅”字段 在MicrosoftAccess数据库 或连接到MicrosoftSQLServer2000或MicrosoftSQLServer2000DesktopEngine中的数据库的Access项目 中创建绑定 列表框、组合框或下拉列表 。
1.在表的“设计”视图 中创建“查阅”字段。
2.请执行下列操作之一:
创建带有绑定到“查阅”字段的列表框或组合框的新窗体
o创建一个基于包含“查阅”字段的记录源的新窗体。
Access将自动创建查阅列表框或组合框。
创建带有绑定到“查阅”字段的列表框或下拉列表的数据访问页
o在“设计”视图中创建新的数据访问页。
该页必须连接到包含“查阅”字段的数据库。
o如果未显示字段列表,请单击“页设计”工具栏上的“字段列表”
。
o从字段列表中将包含“查阅”字段的表或查询拖
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Access 列表