毕业设计---银行工资代发代扣系统实现与设计(4)

2019-06-30 10:42

第三章 工资管理系统设计

(3) 添加代码

主窗体中添加的代码不多,基本上都是实现单击某个菜单选项即弹出相应窗体的语句,这里仅举一例:

选择“系统”-->“修改密码”菜单,出现修改密码窗体,代码如下:

选择“文件”-->“保存frmMain.frm”菜单,保存设好的窗体。 3.4.2 建立登录窗体

(1) 添加窗体

为工程添加一个窗体,在工具栏中选择“添加窗体命令”。更改窗体的属性如下(仅列出修改的属性):

① 名称属性值改为“frmLogin” ② Caption属性值改为“用户登录”

③ StartUpPosition属性值改为“2-屏幕中心” (2) 添加控件

① 为登录窗体添加2个标签(Label),用来标示窗体中的信息;2个文本框(TextBox),用来输入用户名称和用户密码;2个按钮(CommandButton),用来确定或返回。

② 为登录窗体中添加Ado Data控件,用来与数据库进行连接。 ? Ado Data控件简介

Ado Data控件使用Microsoft ActiveX数据对象(ADO)来快速建立数据库绑定的控件和数据提供者之间的连接。数据绑定控件是任何具有“数据源”属性的控件。数据提供者可以是任何符合OLE DB规范的数据源。使用Visual Basic的类模块也可以很方便地创建子集的数据提供者。尽管可以在应用程序中直接使用ActiveX数据对象,但如图3-5所示的Ado Data控件有作为一个图形控件的优势(具有“向前”和“向后”按钮),以及一个易于使用的界面,使可以用最少的代码创建数据库应用程序。

图3-5 Ado Data控件

? 引入 Ado Data控件到VB项目

在VB开发环境中选择主菜单“工程”中的“部件”子菜单,弹出如图3-6所示的部件属性框,在控件标签页中选择“Microsoft ADO Data Control 6.0(OLEDB)”控件。

16

第三章 工资管理系统设计

然后单击“确定”按钮,这样Ado Data控件就引入到当前的VB项目中。在如图3-7所示的VB开发环境中的工具箱中,就能够看到 Ado Data控件的图标。然后单击该图标,就可以在窗体中的任意位置添加Ado Data控件。

? 主要属性

? ConnectionString属性

Ado Data控件的ConnectionString属性是一个字符串,可以包含进行一个连接所需的所有设置值。在该字符串中所传递的参数是与驱动程序相关的。例如,ODBC驱动程序允许该字符串包含驱动程序、提供者 、缺省的数据库、服务器、用户蜜柑年成以及密码等。

? UserName属性

当数据库受密码保护时,需要指定该属性。这个属性可以在ConnectionString中指定。如果同时提供了一个ConnectionString属性以及一个UserName属性,则ConnectionString中的值将覆盖UserName属性的值。

? PassWord属性

在访问一个受保护的数据库时该属性也是必需的。和UserName属性类似,如果在ConnectionString属性中指定了密码,则将覆盖在这个属性中指定的值。

? RecordSource属性

Ado Data控件的RecordSource属性通常包含一条语句,用于决定从数据库检索什么信息。

? CommandType属性

Ado Data控件的CommandType属性告诉数据库提供者Source属性是一条SQL语句、一个表的名称、一个存储过程还是一个未知的类型。

使用CommandType属性可优化CommandText属性的计算。如果CommandType属性的值等于adCmdUnknown(默认值),系统的性能将会降低,因为ADO必须调用提供者以确定CommandText属性是SQL语句、还是存储过程或表格名称。如果知道正在使用的命令

图3-6 Ado Data控件

图3-7

17

第三章 工资管理系统设计

的类型,可通过设置CommandType属性指令ADO直接转到相关代码。如果CommandType属性与CommandText属性中的命令类型不匹配,调用Execute方法时将产生错误。

? LockType属性

LockType属性决定当其他人试图更改正在编辑的数据时,如何锁定该数据。如何设置这个LockType属性是一个复杂的决策,取决欲多个因素。

? Mode属性

Mode属性决定想用记录集进行什么操作。使用Mode属性可设置或返回当前连接上提供者正在使用的访问权限。Mode属性只能在关闭Connection对象时方可设置。例如,如果只是想要创建一个报告,可以将该属性设为只读来获得性能的改善。

? ConnectionTimeout属性

ConnectionTimeout属性设置等待建立一个连接的时间,以秒为单位。如果连接超时,则返回一个错误。

如果由于网络拥塞或服务器负载过重导致的延迟使得必须放弃连接尝试时,请使用Connection对象的ConnectionTimeout属性。如果打开连接前所经过的时间超过ConnectionTimeout属性上设置的时间,将产生在错误,并且ADO将取消该连接尝试。如果将该属性设置为零,ADO将无限等待直到连接打开。请确认正在对其编写代码的提供者会支持ConnectionTimeout功能。

? Recordset属性

返回或设置对下一级ADO Recordset对象的引用。利用Recordset属性,可以使用ADO的ADODB.Recordset对象的方法、属性和事件。必须在Set语句中使用Recordset属性,如下例所示:

Dim rsNwind As New ADODB.Recordset Set ADODC1.Recordset=rsNwind ? BOFAction、EOFAction属性

这两个属性决定当该控件位于光标的开始和末尾时的行为。提供的选择包括停留在开始或末尾、移动到第一个或最后一个记录或添加一个新记录(只能在末尾)。

BOFAction属性有以下两个值:adDoMoveFirst和adStayBOF,分别代表如果当前记录到达了数据的第一条记录的前面时,采取移动到第一条记录的动作或者继续停留在原来位置两种操作。

EOFAction属性值有以下3个值:adDoAddNew、adDoMoveLast和adStayEOF,它们分别代表如果当前记录到达了最后一条数据记录的后面,采取增加一条新记录、移动到最后一条记录或者继续停留在原位置的3种操作。

? 主要事件 ? Error事件

18

第三章 工资管理系统设计

一般地,在开发应用程序时通常要在代码中为代码运行错误时提供错误处理的功能,但有时在没有代码运行时也会发生数据存取的错误,此时才会发生这个事件。该事件的语法为:

object Error([Index As Integer,] ErrorNumber As Long,Description As String,Scode As Long,Source As String,HelpFile As String,HelpContext As Long,fCancelDisplay As Boolean)

其中object为控件对象名:Index为可选参数,如果控件在一个控件数组中,此值可以标识该控件; ErrorNumber为本地错误号码; Description为对错误的描述;Scode为服务器返回的错误代码; Source为错误的来源;;HelpFile为包含该错误详细信息的帮助文件的路径; HelpContext为帮助主题的上下文号码;fCancelDisplay为一个布尔值,可以设置这个值来取消对错误消息的显示。

? EndOfRecordset事件

移动行时如果超过记录集结尾,则调用EndOfRecordset方法。该事件的语法为: Adodc1_EndofRecordset(fMoreData

As

Boolean,adStatus

As

ADODB.EventStatusEnum,ByVal pRecordset As ADODB.Recordset)

当用户可能因调用MoveNext而移过Recordset结尾时,将调用该事件的处理程序。使用该方法用户可以从数据库中检索到更多记录并将其追加到pRecordset的结尾。在这种情况下,用户要将pfMoreData设置为VARIANT_TRUE,并从EndOfRecordset返回。在此之后用户可以再次调用MoveNext以访问新检索到的记录。

? 主要方法

? UpdateControls方法

使用UpdateControls方法将绑定控件的内容恢复为其初始值,如同用户更改了数据,然后又决定取消了这些更改。除了不会导致任何事件的发生之外,这个方法产生的效果与使当前行再次成为当前行一样。由于此方法不会调用任何事件,可以使用这个方法来简化一个更新操作,因为它不会触发任何多余的验证和更改世间过程。

? Refresh方法

Refresh方法用来重新建立或显示与Ado Data控件相连的数据库记录集。如果在程序代码中改变了ConnectionString、RecordSource、CommandType的属性值,就必须用Refresh方法来刷新记录集。

Refresh方法的语法为: Adodc1.Refresh

③ 修改控件的属性设置值:

? 将控件Texbox1的Name属性属性值改为“UserName”

? 将控件Texbox2的Name属性属性值改为PassWord;PassWord属性属性值改为“*”

19

第三章 工资管理系统设计

? 将控件CommandButton1的Name属性属性值改为CmdOK;Caption属性属性值改为“确定”

? 将控件CommandButton2的Name属性属性值改为CmdCancel;Caption属性属性值改为“取消”

? 将控件Label1的Caption属性属性值改为“用户名称” ? 将控件Label2的Caption属性属性值改为“用户密码” 3.4.3 建立部门信息窗体

(1) 添加窗体

为工程添加一个普通窗体,属性设置如下: ① 将名称属性值改为“frmBMInfo” ② 将Caption属性值改为“部门信息” (2) 添加控件

根据前面的介绍可以知道,Ado Data控件必须通过绑定数据感知控件才能提供一个访问数据库的界面,用来对数据库数据的浏览、添加、删除、修改等操作。

为了体现用Ado Data控件直接进行记录的移动,这里就要引入DataGrid控件来进行数据的显示。具体的操作步骤如下:

① 在前面创建的项目中,按照3.3.2节介绍的引入Ado Data控件的方法,在部件属性框的控件标签页中选择“Microsoft Data Grid Control 6.0(OLEDB)”控件,然后引入该控件。

② 在工具箱中单击DataGrid控件的图标,在前面创建的窗体中添加该控件。 为这个窗体添加的控件及其更改的属性设置如下: 将控件Frame1的Caption属性属性值改为“部门列表” ? 将DataGrid1的DataSource属性属性值改为“Adodc1” ? 将DataGrid2的DataSource属性属性值改为“Adodc2”

? 将Adodc1的ConnectionString属性属性值改为“连接企业工资管理系统.mdb”;RecordSource属性属性值改为“部门信息表”

? 将Adodc2的ConnectionString属性属性值改为“连接企业工资管理系统.mdb”;RecordSource属性属性值改为“职工信息表”

? 将Frame2的Caption属性属性值改为“操作” ? 将Command1的Caption属性属性值改为“首记录” ? 将Command2的Caption属性属性值改为“新增部门” ? 将Command3的Caption属性属性值改为“后翻” ? 将Command4的Caption属性属性值改为“删除部门” ? 将Command5的Caption属性属性值改为“末记录”

20


毕业设计---银行工资代发代扣系统实现与设计(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:福建省建筑施工文明工地评分表

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: