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

access开发教程第5章第3节

时 间:2008-11-21 13:21:39
作 者:Access软件网编著   ID:11  城市:上海  QQ:3002789054点击这里给麥田发消息
摘 要:5.3 新增窗体的制作
正 文:

5.3 新增窗体的制作
     在基础资料部分,已经介绍了新增窗体的制作,与现在不同的情况是,那只涉及到两个字段的新增(其中还有一个是由系统负责自动产生数据的字段,实际上说一个字段也可以),而当前则涉及到六个字段(也可以说是五个),差异很小,因此,我们在这里,对前面提到一致的部分,就一笔带过,着重讲述不一致的地方。 
     在进行之前,先进行一个必要的工作,即将 frmBxmx_child 窗体的记录集类型修改成快照(窗体属性 - 数据选项卡 - 记录集类型)。之后在数据库窗口,新建一个空白窗体,之后关闭工具箱的向导,之后依次拖拽五个文本框(因为有一个字段的数据将由系统自动产生),如下图所示:
     
     依次修改各个文本控件的标签,从上到下分别是:报销日期、 报销类别、员工姓名、报销金额、报销摘要、之后再依次修改各个文本框的名称属性(属性-其他选项卡-名称),从上到下依次是:bxrq 、lbId 、ygId 、bxje 、bxzy ,如下图所示:
     
     为了防止出现计算机故障或者误操作而导致工作丢失的情况,可以现在就保存设计,将窗体的命名为: frmBxmx_child_Add 。 
      参考基础资料部分的新增窗体的制作过程,进行当前窗体的布局调整和界面美化,并保存,完成之后如下图所示:
     
     之后再按照如基础资料新增窗体那样介绍的一样修改窗体属性,唯一不同的是将窗体的格式选项卡的标题的属性命名为:报销明细新增。其他的都一致。之后进入该窗体的代码编写界面,输入下面的代码:
     Option Compare Database
     Private Sub ToolbarFrm_ButtonClick(ByVal Button As Object)
     Select Case Button
     Case "保存" 
          cmd_Save
     Case "关闭"
          DoCmd.Close
     End Select
     End Sub
     Private Sub cmd_Save()
     Dim rst As DAO.Recordset
     If IsNull(Me.bxrq) Then
           MsgBox "请输入报销日期!", vbCritical, "提示:"
           Me.bxrq.SetFocus
           Exit Sub
     End If
     If IsNull(Me.lbId) Then
           MsgBox "请输入报销类别!", vbCritical, "提示:"
           Me.lbId.SetFocus
           Exit Sub
      End If
      If IsNull(Me.ygId) Then
           MsgBox "请输入员工姓名!", vbCritical, "提示:"
           Me.ygId.SetFocus
           Exit Sub
       End If
       If IsNull(Me.bxje) Then
           MsgBox "请输入报销金额!", vbCritical, "提示:"
           Me.bxje.SetFocus
           Exit Sub
       End If
       Me.Refresh
       If MsgBox("您确认要保存吗?", vbOKCancel + vbInformation, "提示") = vbOK Then
           Set rst = CurrentDb.OpenRecordset("tblBxmx", dbOpenDynaset)
           rst.AddNew
           rst("mxId") = acchelp_autoid("M",10, "tblBxmx", "mxId")
           rst("bxrq") = Me.bxrq
           rst("lbId") = Me.lbId
           rst("ygId") = Me.ygId
           rst("bxje") = Me.bxje
           rst("bxzy") = Me.bxzy
           rst.Update
           rst.Close
           Set rst = Nothing
           '刷新数据
           If IsLoaded("usysfrmMain") Then
                   DoCmd.Echo False
                   Forms!usysfrmMain!frmChild.SourceObject = "frmBxmx_child"
                   DoCmd.Echo True
           End If
           MsgBox "保存成功!", vbInformation, "提示"
           Me.bxrq = Null
           Me.lbId = Null
           Me.ygId = Null
           Me.bxje = Null
           Me.bxzy = Null
     End If
     End Sub
     大家可以对比一下代码的差异,其实,实质性的差异很小。
进行到这里,下面的工作就与以前的不同,选择报销类别文本框,右键,选择更改为级联菜单的,组合框命令(当初也可以直接拖拽组合框),如下图所示:
    
     之后再将员工姓名的文本框也更改为组合框,完成之后如下图所示:
    
     请注意在前面已经修改过的文本框格式选项卡的背景样式的属性已经自动由透明变成了常规,现在重新修改为透明。
     之后再次选中报销类别的组合框,激活右键菜单,选择属性对话框,如下图所示:
     
     之后选择属性,在弹出的属性对话框中选择数据选项卡,点选行来源文本框,之后再点选之后出现的  按钮,由于这种的界面我们来过很多次了,所以,就不再截图,略微叙述一下,点选  按钮进入之后,在弹出显示表对话框中选择 tblCodeBxlb 表(因为我们选择的是报销类别文本框)添加,之后如前所述说的那样,双击 * 号,表示选择所有字段,如前所述说的那样单击关闭按钮,则会退回到组合框的属性对话框,并自动在行来源(请注意,是行来源)文本框里生成一段 SQL 语句代码,在当前环境下,是这样的:
Select tblCodeBxlb.* FROM tblCodeBxlb; 
      之后依次在此属性对话框里修改以下属性:
数据选项卡
绑定列: 1 
格式选项卡
列数: 2
列宽: 0cm ; 2cm
列表行数: 20
列表宽度: 2cm 
     修改完毕之后,关闭属性对话框以便保存修改。至于员工姓名组合框,如报销类别如此这样修改即可。无非是在选择表的时候选择与其相对应的表,即选择 tblCodeyg 表。其他的属性修改操作完全一致。 
     到了这里,新增界面的工作就完成了,添加窗体说明,导航和分配权限之后,即可测试其功能如何,之后进入下一步工作。当然,为了便于操作的目的,还可以进行一些锦上添花的修改,我们在后面将继续叙述。
相关索引:上一节 下一节


Access软件网官方交流QQ群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

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