access开发教程第5章第4节
时 间:2008-11-22 09:06:38
作 者:Access软件网编著 ID:11 城市:上海 QQ:3002789054
摘 要:5.4 修改窗体的制作
正 文:
5.4 修改窗体的制作
同样,在基础资料部分,已经介绍了修改窗体的制作,与现在不同的情况是,那只涉及到一个字段的修改,而当前则涉及到五个字段,差异很小,因此,我们在这里,对前面提到一致的部分,就一笔带过,着重讲述不一致的地方。
如新增窗体的制作一样,先新建一个新的空白窗体,之后添加五个文本框控件,之后显示窗体页眉页脚,并调整大小,之后如前所叙述的那样,将相应的 ActiveX_02 窗体中的相应控件拷贝过来,并调整布局,之后保存当前的窗体设计,将窗体按之前提到命名规则,命名为: frmBxmx_child_Edit ,与新增窗体操作步骤一样的部分,在这里不再重复讲述,调整好的窗体如下图所示:
同样,在基础资料部分,已经介绍了修改窗体的制作,与现在不同的情况是,那只涉及到一个字段的修改,而当前则涉及到五个字段,差异很小,因此,我们在这里,对前面提到一致的部分,就一笔带过,着重讲述不一致的地方。
如新增窗体的制作一样,先新建一个新的空白窗体,之后添加五个文本框控件,之后显示窗体页眉页脚,并调整大小,之后如前所叙述的那样,将相应的 ActiveX_02 窗体中的相应控件拷贝过来,并调整布局,之后保存当前的窗体设计,将窗体按之前提到命名规则,命名为: frmBxmx_child_Edit ,与新增窗体操作步骤一样的部分,在这里不再重复讲述,调整好的窗体如下图所示:
依次修改各个文本控件的标签,从上到下分别是:报销日期、报销类别、员工姓名、报销金额、报销摘要,之后再依次修改各个文本框的名称属性(属性 - 其他选项卡 - 名称),从上到下依次是: bxrq 、 lbId 、 ygId 、 bxje 、 bxzy ,之后再依次修改各个文本框的控件来源属性(属性 - 数据选项卡 - 控件来源),从上到下依次是: bxrq 、 lbId 、 ygId 、 bxje 、 bxzy (新增窗体不需要设置数据源,但是修改窗体则一定需要设置数据源),如下图所示:
按照以前介绍的方法进行界面的美化工作,完成之后如下图所示:
之后,将报销类别和员工姓名更改为组合框,其行来源和其他属性修改与新增窗体完全一致,完成之后如下图所示:
之后再修改窗体属性:
格式选项卡:
标题:报销明细修改;
滚动条:两者均无;
记录选定器:否;
导航按钮:否;
分隔线:否;
自动调整:否;
自动居中:是;
边框样式:对话框边框;
控制框:否(新增窗体不需要修改这一属性);
最大化最小化按钮:无;
关闭按钮:否。
数据选项卡,:
允许添加:否。
其他选项卡:
弹出方式:是;
模式:是。
修改完毕之后,关闭窗体属性对话框保存修改。
如前所述,由于全局变量已经定义,这里就不要再定义了,直接进入 frmBxmx_child 窗体的设计界面,之后右键单击报销编号的文本框,进入属性界面后,再进入事件选项卡的获得焦点事件的代码输入界面,如下图所示:
格式选项卡:
标题:报销明细修改;
滚动条:两者均无;
记录选定器:否;
导航按钮:否;
分隔线:否;
自动调整:否;
自动居中:是;
边框样式:对话框边框;
控制框:否(新增窗体不需要修改这一属性);
最大化最小化按钮:无;
关闭按钮:否。
数据选项卡,:
允许添加:否。
其他选项卡:
弹出方式:是;
模式:是。
修改完毕之后,关闭窗体属性对话框保存修改。
如前所述,由于全局变量已经定义,这里就不要再定义了,直接进入 frmBxmx_child 窗体的设计界面,之后右键单击报销编号的文本框,进入属性界面后,再进入事件选项卡的获得焦点事件的代码输入界面,如下图所示:
在鼠标光标处输入以下代码:
On Error GoTo Err_报销编号_GotFocus:
selectstr = Me.报销编号
Forms!usysfrmMain!labFind.Tag = 1
Forms!usysfrmMain!btnEdit.Tag = 999
Exit_报销编号_GotFocus:
Exit Sub
Err_报销编号_GotFocus:
Resume Exit_报销编号_GotFocus
其结果如下图所示:
On Error GoTo Err_报销编号_GotFocus:
selectstr = Me.报销编号
Forms!usysfrmMain!labFind.Tag = 1
Forms!usysfrmMain!btnEdit.Tag = 999
Exit_报销编号_GotFocus:
Exit Sub
Err_报销编号_GotFocus:
Resume Exit_报销编号_GotFocus
其结果如下图所示:
如前所述说的那样,确认无误关闭代码窗口,保存修改,之后再打开该窗体的属性,即 frmBxmx_child 的窗体属性,选择事件选项卡,在成为当前文本框中输入以下内容: =selectrecord() 。
关闭窗体属性保存输入,关闭 frmBxmx_child 窗体并切换到 frmBxmx_child_Edit 窗体,之后再打开该窗体的窗体属性,选择事件选项卡,进入加载事件的代码编辑窗口,如下图所示:
关闭窗体属性保存输入,关闭 frmBxmx_child 窗体并切换到 frmBxmx_child_Edit 窗体,之后再打开该窗体的窗体属性,选择事件选项卡,进入加载事件的代码编辑窗口,如下图所示:
在鼠标光标处输入以下代码:
Me.RecordSource = "Select * FROM tblBxmx Where mxId = '" & selectstr & "'"
保存输入,之后在该段代码末尾处新起一行,输入以下代码:
Private Sub ToolbarFrm_ButtonClick(ByVal Button As Object)
If IsNull(Me.bxrq) Then
MsgBox "请输入报销日期!", vbCritical, "提示:"
Me.bxrq.SetFocus
Exit Sub
End If
If IsNull(Me.lbId) Then
MsgBox "请输入报销类别!", vbCritical, "提示:"
Me.RecordSource = "Select * FROM tblBxmx Where mxId = '" & selectstr & "'"
保存输入,之后在该段代码末尾处新起一行,输入以下代码:
Private Sub ToolbarFrm_ButtonClick(ByVal Button As Object)
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
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
DoCmd.Echo False
Forms!usysfrmMain!frmChild.SourceObject = "frmBxmx_child"
DoCmd.Echo True
'触发子窗体计时器事件
Forms!usysfrmMain!frmChild.Form.TimerInterval = 300
DoCmd.Close acForm, "frmBxmx_child_Edit"
End Sub
完成之后如下图所示:
DoCmd.Echo False
Forms!usysfrmMain!frmChild.SourceObject = "frmBxmx_child"
DoCmd.Echo True
'触发子窗体计时器事件
Forms!usysfrmMain!frmChild.Form.TimerInterval = 300
DoCmd.Close acForm, "frmBxmx_child_Edit"
End Sub
完成之后如下图所示:
进行到这里,修改窗体的设计,就基本完成了,添加导航按钮、分配权限之后进行测试,测试成功之后进入下一步。
Access软件网QQ交流群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- Access对子窗体数据进行批...(10.30)
- 最精简的组合框行来源数据快速输...(10.25)
- Access仿平台的多值选择器...(10.24)
- 【Access日期区间段查询】...(10.22)
- 【Access源码示例】VBA...(10.12)
- Access累乘示例,Acce...(10.09)
- 数值8.88,把整数8去掉,转...(10.08)
- 【Access自定义函数】一个...(09.30)
- 【Access选项卡示例】Ac...(09.09)
学习心得
最新文章
- Access快速开发平台--对上传...(11.22)
- Access快速开发平台企业版--...(11.18)
- 不会用多表联合查询,多表查询没结果...(11.16)
- 【案例分享】主键字段值含有不间断空...(11.16)
- Access快速开发平台--后台D...(11.14)
- 微软Access邀测新Monaco...(11.12)
- Access列表框左右互选、列表框...(11.11)
- 高效率在导入数据前删除记录(11.10)
- Access报价单转订单示例代码(11.08)
- Access系统自带的日期选择器不...(11.08)