Access 2003完整教程:创建列表框、组合框或下拉列表

列表框、组合框或下拉列表可以是一个绑定或未绑定的控件,并且它可以在一个固定的列表中或在表、查询中查找值。若要创建一个在表或查询中查找值的绑定列表框、组合框或下拉列表,请确保窗体或数据访问页基于一个包含外键字段或“查阅”字段的记录源。

使用向导创建列表框、组合框或下拉列表

  1. 在“设计”视图中打开窗体或数据访问页。
  2. 在工具箱中确保选定了“控件向导”工具
  3. 单击工具箱中的“列表框”工具列表框控件、“组合框”工具组合框工具或“下拉列表”工具组合框工具
  4. 在窗体或数据访问页上,单击要放置列表框、组合框或下拉列表的位置。在向导对话框中,按照说明进行操作并选择所需选项。

    操作方法:

    1. 当向导询问您希望如何为控件获得值时,请执行下列操作之一:
      • 如果想显示几乎不进行更改的一串固定值,则单击“自行键入所需的值”。
      • 如果想显示记录源中的当前数据,则单击“使列表框在表或查询中查阅数值”。
    2. 按照说明指定值的显示方式。
    3. 如果正在窗体中创建列表框或组合框,当向导询问在选择值时需要 Microsoft Access 执行何种操作时,请执行下列操作之一:
      • 如果正在创建未绑定控件,则单击“记住该数值供以后使用”。
      • 如果正在创建绑定控件,则单击“将该数值保存在这个字段中”并选择想要的字段。
    4. 单击“完成”。
  5. 在数据访问页中,单击“页设计”工具栏上的“属性”,打开控件的属性表。在ControlSource属性框中,选择要将列表框或下拉列表绑定到的字段。

创建绑定到表中“查阅”字段的列表框、组合框或下拉列表

可以使用表中的“查阅”字段在Microsoft Access 数据库或连接到 Microsoft SQL Server 2000 或 Microsoft SQL Server 2000 Desktop Engine 中的数据库的Access 项目中创建绑定列表框、组合框或下拉列表。

  1. 在表的“设计”视图中创建“查阅”字段。

  2. 请执行下列操作之一:

    创建带有绑定到“查阅”字段的列表框或组合框的新窗体

    • 创建一个基于包含“查阅”字段的记录源的新窗体。Access 将自动创建查阅列表框或组合框。

    创建带有绑定到“查阅”字段的列表框或下拉列表的数据访问页

    1. 在“设计”视图中创建新的数据访问页。该页必须连接到包含“查阅”字段的数据库。
    2. 如果未显示字段列表,请单击“页设计”工具栏上的“字段列表”
    3. 从字段列表中将包含“查阅”字段的表或查询拖到数据访问页中。当出现“版式向导”时,选择“纵栏式”或“列表式”。Access 将自动创建查阅列表框或下拉列表。

    向窗体或数据访问页添加列表框、组合框或下拉列表

    1. 在“设计”视图中,打开基于包含“查阅”字段的记录源的窗体,或打开连接到包含“查阅”字段的数据库的数据访问页。
    2. 如果未显示字段列表,请单击“窗体设计”或“页设计”工具栏上的“字段列表”
    3. 从字段列表中将“查阅”字段拖到窗体或数据访问页中。Access 将自动创建查阅列表框、组合框或下拉列表。

从头开始创建列表框、组合框和下拉列表

当从头开始创建列表框、组合框或下拉列表时,可以自己设置控件的很多属性。如果想了解某个特定属性的更详细信息,请单击适当的属性框并按 F1。

  1. 在“设计”视图中打开窗体或数据访问页。
  2. 在工具箱中确保选定了“控件向导”工具
  3. 单击工具箱中的“列表框”工具列表框控件、“组合框”工具组合框工具或“下拉列表”工具组合框工具
  4. 单击窗体、报表或数据访问页,以创建默认大小的控件,或单击并拖动直至控件达到所需的大小。
  5. 在该控件仍被选定的情况下,单击“窗体设计”或“页设计”工具栏上的“属性”,打开控件的属性表。
  6. 请执行下列操作之一:

    为窗体中的列表框或组合框设置属性

    1. 在“行来源类型”属性框中,请执行下列操作之一:
      • 在 Access 数据库中,若要显示来自表或查询中的值或显示 SQL 语句的结果,请选择“表/查询”。
      • 在 Access 项目中,若要显示来自表或查询中的值或显示 SQL 语句的结果,请选择Table/View/StoredProc
      • 若要显示值的固定列表,请选择“值列表”。
      • 若要显示表或查询中的字段列表,请选择“字段列表”。
    2. 在“行来源”属性框中,请执行下列操作之一:
      • 选择希望在列表框中出现的值或字段名称所在的表或查询。
      • 键入一系列固定值,每项固定值之间以分号 (;) 隔开。
      • 键入一个 SQL 语句,或单击“生成器”按钮打开“查询生成器”。
    3. 如果需要在控件中显示多列,请单击“列数”属性框并键入所需的列数。

    为数据访问页中的列表框或下拉列表框设置属性

    1. 设置ListRowSource属性框,选择所需的记录集。
    2. ListBoundFieldListDisplayField属性框中,选择所需的字段。
  7. 如果希望 Access 存储所选的值,则请单击ControlSource属性框,并选择要将列表框、组合框或下拉列表绑定到的字段。

在窗体中创建从 Visual Basic 函数中取得数据行的列表框或组合框

如果列表中的值经常更改或者并非保存在数据库中,则可以使用该过程。例如,可以编写一个函数,用以将一系列日期填入列表框内,每个日期距离现在日期都有特定的天数。

  1. 创建Visual Basic 函数。
  2. 在工具箱中确保选定了“控件向导”工具
  3. 单击工具箱中的“列表框”工具列表框控件或“组合框”工具组合框工具
  4. 在该控件仍被选定的情况下,单击“窗体设计”工具栏上的“属性”,打开控件的属性表。
  5. 在“行来源类型”属性框中,输入函数名。在函数名之前不要加等号。
  6. 将“行来源”属性框留空。

对列表框、组合框和下拉列表进行自定义

  1. 在窗体或数据访问页的“设计”视图中,确保已选中列表框、组合框或下拉列表框,然后单击工具栏上的“属性”以打开该控件的属性表。
  2. 执行下列操作之一:

    更改列表框、组合框或下拉列表框中的排序次序

    如果使用向导创建列表框、下拉列表框或组合框,Microsoft Access 将自动按照第一个可见列对构成列表的行进行排序。如果想指定另外一种排序次序,或者如果已将该控件的“行来源”属性设为已保存的查询,则可以使用下列两个过程中的一个。

    注释在独立的数据访问页或在与当前未打开的数据库连接的数据访问页中,“向导”是不可用的。这种情况下,必须自行创建列表框或下拉列表框。

    • 若要更改窗体上控件的排序次序,请单击“数据”选项卡,在“行来源”属性框旁边单击“生成器”按钮,打开“查询生成器”或“SQL 语句生成器”,并指定所需的排序次序。
    • 若要更改数据访问页上控件的排序次序,可按所需的排序次序创建查询,然后在数据访问页的ListRowSource属性框中,从列表中选择查询。

    绑定列表框、组合框或下拉列表框中的列

    • 在窗体中在列表框或组合框的“绑定列”属性框中,指定一个对应于列表框或组合框中列所在位置的数字。例如,键入1可将列表框或组合框中的第一列绑定到“控件来源”属性中指定的基础字段上。在计数列数时请包含隐藏的列。

      如果将“绑定列”属性设为0,则 Mcrosoft Access 保存列表索引,而不保存其中一个列的值。这在保存一系列数字而不是列表值的时候是很有用的。

    • 在数据访问页中在列表框或下拉列表框的ListBoundField属性框中,输入与列表框或下拉列表框中列所在的位置对应的字段的名称。

    将 SQL 语句用作窗体上列表框或组合框的行来源

    可能需要用SQL 语句(而不是已保存的查询)作为窗体上列表框或组合框的行来源,这样就不会在“数据库”窗口中显示查询。但是,基于 SQL 语句的列表框和组合框会比基于已保存查询的列表框和组合框慢一些。

    1. 单击“行来源”属性旁的“生成器”按钮,打开“查询生成器”。
    2. 在“查询生成器”中,单击“视图”菜单上的“SQL 视图”
    3. 在“SQL”窗口中,选定整个 SQL 语句,按 Ctrl+C 进行复制,然后关闭“查询生成器”。
    4. 单击“行来源”属性框,按 Ctrl+V 将 SQL 语句粘贴到属性框中。
    5. 删除“数据库”窗口中原来的查询。

    隐藏窗体上列表框或组合框中的列

    • 在“列宽”属性框中,为要隐藏的列(一列或多列)输入0

      例如,假定一个两列绑定组合框包含“供应商ID”列和“供应商名称”列,且“供应商ID”是列表中的第一列。若要隐藏“供应商ID”,则可按下列图例设置“列宽”属性。

      使用“列宽”属性隐藏列

      标注 1将“供应商ID”列(第一列)设为 0 以隐藏它。

      标注 2为“供应商名称”列指定宽度。

      标注 3“供应商ID”列是绑定列,即使隐藏起来也是如此。

    注释在组合框中,当列表未显示时,第一个可见的列将显示在组合框的文本框部分中。例如,在前一个示例中,因为“供应商ID”列隐藏,因此将显示“供应商名称”列。如果“供应商ID”列没有隐藏,则它是唯一显示出来的列。

    为窗体上的组合框添加列标题

    • 在“列标题”属性框中,单击“是”以显示列标题。只有当列表打开时,才会显示组合框中的列标题。

      如果组合框或列表框是基于记录源的,则 Microsoft Access 使用记录源的字段名称作为列标题。如果组合框或列表框是基于固定值列表的,则 Microsoft Access 使用值列表的前 x 项数据(“行来源”属性)作为列标题,其中,x 等于“列数”属性中设置的数字。

    关闭窗体上组合框的“所键即所填”功能

    • 在“自动展开”属性框中单击“否”。

      当“自动展开”属性设为“否”时,必须从列表中选择一个值或键入完整的值。

    设置窗体上组合框的列表框部分的宽度

    • 在“列宽”属性框中,用当前的度量单位(在 Windows“控制面板”中设置)输入需要的宽度。若要使用非默认的度量单位,请在数字后加上度量单位,例如,输入“2 厘米”。请确保为滚动条留出足够的空间。

      组合框的列表框部分可以比文本框部分宽,但不能比它窄。默认设置(“自动”)使列表框与组合框的文本框部分宽度相同。

    设置窗体上组合框中可显示的最大行数

    • 在“列数”属性框中输入数字。

      如果实际的行数超过“列数”属性中指定的数字,则在组合框中将显示垂直滚动条。

    将组合框输入项限制在窗体上组合框的列表部分的项目内

    • 在“限于列表”属性框中单击“是”。

    注意

    如果显示在组合框中的第一列不是绑定列,即使“限于列表”属性设为“否”,Microsoft Access 仍会限制条目数不超过列表的项数。

    如果“限于列表”属性设为“否”,则当输入项不在列表内时,如果组合框是绑定的,则输入项会存储在基础字段中,而不会添加到列表中。若要向列表中添加新的输入项,请使用“不在列表中”属性和 NotInList 事件。

上页:Access 2003完整教程:向窗体、报表或数据访问页添加字段 下页:Access 2003完整教程:在数据访问页上创建用于网站的图表

Access 2003完整教程:创建列表框、组合框或下拉列表

Access 2003完整教程:在数据访问页上创建用于网站的图表Access 2003完整教程:创建约束 (ADP)
Access 2003完整教程:创建约束验证文本 (ADP)Access 2003完整教程:使子窗体与显示页眉和页脚的数据表类似
Access 2003完整教程:当鼠标指针在控件上移动时显示提示Access 2003完整教程:创建交叉表报表
Access 2003完整教程:创建自定义颜色Access 2003完整教程:组数据库对象
Access 2003完整教程:创建在查找 Access 文件时所用的自定义属性Access 2003完整教程:将现有的网页转换为数据访问页
Access 2003完整教程:创建自己的数字证书Access 2003完整教程:在查询中创建计算字段 (MDB)
Access 2003完整教程:创建存储超链接的字段 (MDB)Access 2003完整教程:创建字段以存储图片的路径
Access 2003完整教程:用筛选记录创建数据库对象 (MDB)Access 2003完整教程:创建输入掩码 (ADP)
Access 2003完整教程:创建标签Access 2003完整教程:创建查阅列 (ADP)
Access 2003完整教程:创建宏Access 2003完整教程:创建邮件标签
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号