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

【access开发平台】根据浮动窗体的选择来让子窗体显示相应明细数据

时 间:2007-06-26 00:00:00
作 者:麥田   ID:11  城市:上海  QQ:3002789054点击这里给麥田发消息
摘 要:根据浮动窗体的选择来让子窗体显示相应明细数据
正 文:

预览效果图:

      登录到“中国汽车零部件管理信息系统”后,单击销售订单按钮,出现如下图所示的一个浮动小的选择窗体:

此时可以选择组合框里面的记录值,如下图:


1、选择好名称后对应的详细名称会在下面的列表框显示,如图:
                                          


2、选择具体的名称后,对应的记录就会显示为您所选择的类型,如图:
  2.1按客户选择:


  2.2按机型选择:     


制作过程:
1、回到设计视图界面,选择“窗体”栏,新建空白“窗体”;
2、选择工具栏,新建一个组合框与列表框,调整完整后如图所示:


3、修改窗体的属性,
①在“格式”栏命名“标题”为“请选择”;默认视图为“单个窗体”;
②将“其他”栏的弹出方式改为“是”
   或参考下面的图修改:


4、修改组合框的属性,①此例我们将组合框名称命名为cobSort;将“数据”栏的“行来源类型”改为“值列表”;“行来源”我们手动输入为“全部按机型按客户”;“默认值”改为“"全部"”
参考图例:

②“事件”栏,选择更新后[事件过程],在光标处写入代码为:
    Select Case Me.cobSort
    Case "全部"
            ‘让usysfrmMain的子窗体的数据源为qryXsddzj
        Forms!usysfrmMain!frmChild.Form.RecordSource = "qryXsddzj"
            Me.lstSort.RowSource = ""
    Case "按机型"
            ‘给列表框lstSort加载行来源
        Me.lstSort.RowSource = "Select tblCode_jx.jxID, tblCode_jx.zjmc " _
                                 & "FROM tblCode_jx " _
                             & "ORDER BY tblCode_jx.jxID;"
    Case "按客户"
        Me.lstSort.RowSource = "Select tblCode_kh.khID, tblCode_kh.khmc " _
                             & "FROM tblCode_kh " _
                             & "ORDER BY tblCode_kh.khmc;"
    End Select
  ‘刷新lstSort控件
    Me.lstSort.Requery


5、修改列表框的属性:
①此例我们将列表框名称命名为lstSort;将“数据”栏的“行来源类型”改为“表/查询”;“行来源”为空;
参考图例:

②“事件”栏,选择更新后[事件过程],在光标处写入代码为:
    Select Case Me.cobSort
    Case "按机型"
        Forms!usysfrmMain!frmChild.Form.RecordSource = "select * from qryXsddzj where 机型='" & Me.lstSort.Column(1) & "'"
‘Me.lstSort.Column(1)是指第2列,第1列是lstSort.Column(0)
        Case "按客户"
        Forms!usysfrmMain!frmChild.Form.RecordSource = "select * from qryXsddzj where 户名称='" & Me.lstSort.Column(1) & "'"
    End Select


   注:红色部分为qryXsddzj的查询里面相应的字段中文名称,您在学习过程中可能不一定设置的也是"机型",此处您改一下要跟您qryXsddzj里面的一致即可


6、保存窗体并命名名称,此例为:frmSelectSort

7、此例是以 销售订单为例的,所以回到销售订单的子窗体frmXsddzj_Child设计界面
   到“窗体”的属性界面,
① 选择“事件”栏,选择加载[事件过程],在光标出写入代码为:
    DoCmd.OpenForm "frmSelectSort"

    '下面代码是让浮动窗体frmSelectSort靠屏幕最左面显示

    With Forms("frmSelectSort")
    .Move Me.WindowLeft - .WindowWidth, Me.WindowTop
    End With
② 选择“事件”栏,选择关闭[事件过程],在光标出写入代码为:

   ‘如果"frmSelectSort"窗体处于打开状态,则关闭它
          If IsLoaded("frmSelectSort") Then
        DoCmd.Close acForm, "frmSelectSort"
    End If

这样就完成了该功能的实现。

动画演示实际操作效果:



相关文章:  按输入模糊数据进行查找  按输入日期时间段进行查找



Access快速开发平台QQ群 (群号:321554481)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

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