国开《数据库基础与应用》第十一章 11-3-3:窗体中事件过程分析

搜答案方法:电脑端按「Ctrl+F」、手机端用「页面查找」功能输入关键词查找。

11-3-3:窗体中事件过程分析

在上面介绍的数据库应用窗体中,共包含有7个命令按钮,在窗体视图状态下,当单击每个命令按钮时将自动完成相应的功能。窗体中的7个命令按钮,定义有7个单击事件的过程,同时还定义有一个窗体加载事件的过程。

(1)进入窗体加载事件过程的VBE窗口

在窗体的设计视图中,让打开的属性表窗口顶部的组合框选定的对象为“窗体”,如图4所示,再打开其下面的“事件”选项卡,单击“加载”后面的组合框按钮,从中选择“[事件过程]”,然后再单击其后的省略号按钮,打开事件代码生成器,即VBE窗口,如下图5所示。

国开《数据库基础与应用》第十一章 11-3-3:窗体中事件过程分析
图4 属性表

在图5所示的代码生成器的编辑区内,给出了由用户编写的针对此数据库应用窗体的所有事件代码。其中加载事件代码被自动排列到了最后位置。在所有事件代码外的顶部位置,由用户给出了在该窗体的所有事件过程中都可以使用的公用变量的定义。

国开《数据库基础与应用》第十一章 11-3-3:窗体中事件过程分析
图5 定义事件过程的VBE窗口

(2)整个窗体中公用变量的定义

在这里给出了4个变量的定义:

  Dim conn As ADODB.Connection

  Dim strSQL As String

  Dim rs As New ADODB.Recordset

  Dim Num As Integer

(3)窗体加载事件过程的定义

  Private Sub Form_Load()   '窗体加载事件过程

     Set conn = CurrentProject.Connection

     strSQL = "select 雇员ID,姓名,性别,年龄,职称,工资 from 雇员 "

     rs.Open strSQL, conn

     rs.MoveFirst

     Do While Not rs.EOF

       Num = Num + 1

       rs.MoveNext

     Loop

     rs.MoveFirst

  End Sub

(4)求雇员表中工资字段的最大值

  Private Sub Cmd1_Click()   '求工资的最大值

     Dim MaxValue As Double

     Dim i As Integer

     rs.MoveFirst

     For i = 1 To Num Step 1

       If rs(5) > MaxValue Then MaxValue = rs(5)

       rs.MoveNext

     Next i

     Lab1.Caption = MaxValue

  End Sub

rs(5)表示rs记录集中当前记录内的序号为5的字段值,即工资字段的值,各字段序号从前向后依次从0开始顺序编号,工资是第6个字段,所有序号为5。

(5)按输入的职称查询人数

  Private Sub Cmd6_Click()   '求出用户在Text2文本框中输入的一种职称的人数

     Dim nn As Integer

     Dim i As Integer

     rs.MoveFirst

     For i = 1 To Num Step 1

        If rs(4) = Text2 Then nn = nn + 1

        rs.MoveNext

   Next i

   Lab9.Caption = nn

  End Sub

Text2是在窗体设计时用户给输入职称的文本框控件所起的名称。Lab9是Text2文本框下面位置的标签控件,是在窗体设计时用户给该标签控件所起的名称。

(6)其他单击事件过程

窗体中其他命令按钮单击事件的过程如下所示。

  Private Sub Cmd2_Click()   '求工资的最小值

     Dim MinValue As Double: MinValue = 80000

     Dim i As Integer

     rs.MoveFirst

     For i = 1 To Num Step 1

        If rs(5) < MinValue Then MinValue = rs(5)

        rs.MoveNext

     Next i

     Lab2.Caption = MinValue

  End Sub

  Private Sub Cmd3_Click()   '求工资的平均值

     Dim MeanValue As Double

     Dim i As Integer

     rs.MoveFirst

     For i = 1 To Num Step 1

        MeanValue = MeanValue + rs(5)

        rs.MoveNext

     Next i

     Lab3.Caption = Int(MeanValue / Num * 100) / 100

  End Sub

  Private Sub Cmd4_Click()   '求出雇员人数

     Lab4.Caption = Num

  End Sub

  Private Sub Cmd5_Click()   '求出用户在Text1文本框中输入的一种性别的人数

     Dim nn As Integer

     Dim i As Integer

     rs.MoveFirst

     For i = 1 To Num Step 1

        If rs(2) = Text1 Then nn = nn + 1

        rs.MoveNext

     Next i

     Lab8.Caption = nn

  End Sub

  Private Sub Cmd7_Click(   '按用户在Text3文本框中输入的雇员姓名查找并显示记录

     Dim i As Integer

     rs.MoveFirst

     For i = 1 To Num Step 1

        If rs(1) = Text3 Then Exit For

        rs.MoveNext

     Next i

     If Not rs.EOF Then

        Lab10.Caption = rs(0): Lab11.Caption = rs(1): Lab12.Caption = rs(2)

        Lab13.Caption = rs(3): Lab14.Caption = rs(4): Lab15.Caption = rs(5)

     Else

        Lab10.Caption = "": Lab11.Caption = "": Lab12.Caption = "男"

        Lab13.Caption = "": Lab14.Caption = "": Lab15.Caption = ""

     End If

  End Sub


「国开学习吧」:用户COOKIE有效时间30天,收藏网址『guokaixuexi.com』不迷路哦~

相关文章

国开《数据库基础与应用》第十一章 11-2:宏和模块的嵌入式创建和使用

国开《数据库基础与应用》第十一章 11-2:宏和模块的嵌入式创建和使用

11-2:宏和模块的嵌入式创建和使用宏和模块不仅可以单独被建立、命名和使用,还可以同一个窗体中的控件事件有机结合在一起,进行建立和使用,由系统自动绑定、命名、保存和运行。例如:我们要建立一个窗体,实现...

国开《数据库基础与应用》第四章 4-5-3:GROUP BY选项

国开《数据库基础与应用》第四章 4-5-3:GROUP BY选项

4-5-3:GROUP BY选项GROUP BY选项的语法格式如下:GROUP BY <分组列名1> [, <分组列名2> ...]例1:从学生表中查询出每个专业的学生数分析:...

国开《数据库基础与应用》第七章 7-4-3:例7-3

国开《数据库基础与应用》第七章 7-4-3:例7-3

7-4-3:例7-3假定要在“公司信息管理”数据库中建立“用户”表,它包含有用户名、密码、用户类型这三个字段,用户类型只能取“超级管理员”、“管理员”、“普通用户”和“游客”这四个值,请把“用户类型“...

国开《数据库基础与应用》第八章 8-2-1:例1

国开《数据库基础与应用》第八章 8-2-1:例1

8-2-1:例1通过查询设计视图,在订单表和雇员表的基础上建立一个选择查询。下面就分步介绍此选择查询建立和执行的全过程。第一步:单击Access主界面中“创建”选项卡内的“查询设计”图标,进入查询设计...

国开《数据库基础与应用》第四章 4-5-2:教学库样例

国开《数据库基础与应用》第四章 4-5-2:教学库样例

4-5-2:教学库样例建立的教学数据库,其中包含有3个表,即学生表,课程表和选课表,学生表和课程表是多对多的联系。这3个表结构的定义,在本章第2讲中已经给出,这里只给出这3个表的实例数据,分别如下面表...

国开《数据库基础与应用》第四章 4-2-4:表级完整性约束

国开《数据库基础与应用》第四章 4-2-4:表级完整性约束

4-2-4:表级完整性约束列级完整性约束的定义只针对所在的列,而表级完整性约束的定义可以针对该表中定义的任何一个列或若干个列,当需要涉及到多个列的完整性约束的定义时,则必须使用表级完整性约束的定义方式...

国开《数据库基础与应用》第四章 4-6-7:EXISTS格式

国开《数据库基础与应用》第四章 4-6-7:EXISTS格式

4-6-7:EXISTS格式使用EXISTS格式的专门比较式。使用关键字EXISTS的专门比较式的语法格式如下:[NOT] EXISTS ( <子查询> )例10:从教学库中查询出没有选修...

国开《数据库基础与应用》第七章 7-2-1:表中的字段属性

国开《数据库基础与应用》第七章 7-2-1:表中的字段属性

7-2-1:表中的字段属性在一个表中,根据字段的数据类型不同,将需要设置不同的字段属性。例如:数据类型字段属性文本主要有字段大小、格式、输入掩码、默认值、有效性规则、有效性文本、必需、允许空字符串、索...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。