8.txtlsNull 函数
判断输入到TextBox的内容是否为空,参数为TextBox事例。处理流程:如 果TextBox文件为空,返回值为True,否则,返回值为False,并设置该TextBox获得焦点,背景色设置为蓝色。
Public Function txtIsNull(txt As TextBox) As Boolean If Trim(txt.Text) = \ txtIsNull = True txt.SetFocus txt.BackColor = BLUE Else
txtIsNull = False End If End Function
9.lsOverStringLen 函数
判断输入内容是否超过给定值,,参数为需要处理的字符串和给顶长度值。处 理流程:判断字符串长度不超过给定时返回值为True,否则,返回值为false。 Public Function IsOverStringLen(ByVal str As String, lenthText As Integer) As Boolean
If Len(Trim(str)) > lenthText Then IsOverStringLen = True Else
IsOverStringLen = False End If End Function
10.viewData 函数
在Datagrid中显示数据,参数为SQL语句和将要显示数据的Datagrid。处理流程:执行SQL语句,当检索到的记录数不为0时,将相应的数据集设置为Datagrid数据源,并返回记录数,否则给出提示信息“还没有数据!”,返回0。
Public Function viewData(ByVal txtSQL As String, dgAll As DataGrid) As Integer Dim rstData As ADODB.Recordset Dim result As String '检索需要的信息
result = ExecuteSQL(txtSQL, rstData, False) '设置datagrid的数据源
If rstData.RecordCount <> 0 Then Set dgAll.DataSource = rstData viewData = rstData.RecordCount Else
MsgBox \还没有数据!\警告\ viewData = 0 End If End Function
22
5.2 主控制平台的设计和实现
1.总体布局
系统主控平台才用简单、直观的布局,通过菜单实现对系统各个模块的调用和对各个窗体的显示。设置状态栏用来显示当前日期、时间和当前用户信息。 2.主控制平台的界面效果(如图5-1所示)
3.窗体和控件特殊属性(见表5-2)
表5-2 窗体和控件特殊属性 控件名称 frmMain Lb1 控件属性 StratUpPosition BoderStyle 设置 2 0 4.程序设计
(1)添加菜单和状态栏:根据总体设计中对各个模块的设计,使用菜单编辑器和StatusBar控件创建系统菜单和状态栏。菜单项目有: 1)系统管理→用户管理、修改密码。 2)基础数据管理。 3)部门信息管理。
4)职员信息管理→职员信息管理、报表→职员基本信息报表、职员就职信息报表、职员通讯录。 5)考勤信息查询。 6)考评信息管理。
23
7)帮助。 8)退出。
(2)窗体加载事件。 处理流程:调用初始化过程initial,设置系统权限:当用户不是系统管理员时,“用户管理”和“基础数据管理”菜单不可使用。
Private Sub Form_Load()
Call initial '调用初始化过程 Call purview '设置部分权限 End Sub
(3)初始化过程initial。
处理流程:加载背景图片,设置状态栏。
Private Sub initial() '加载背景图片 Dim strpath As String strpath = \
frmMain.Picture = LoadPicture(App.Path & strpath) '设置状态栏显示系统信息 StatusBarUser.Panels.Add (1)
StatusBarUser.Panels.Item(1).Width = 7201.13 StatusBarUser.Panels.Add (2) StatusBarUser.Panels.Add (3)
StatusBarUser.Panels.Item(1).Style = sbrText StatusBarUser.Panels.Item(2).Style = sbrDate StatusBarUser.Panels.Item(3).Style = sbrTime
StatusBarUser.Panels.Item(1).Text = \当前系统用户是\,您是\End Sub
(4)权限设置函数purview:
处理流程:判断当前用户类型,设置部分权限。
Private Sub purview()
Select Case gUserKind '设置系统权限 Case \系统管理员\
Me.subMenuClient.Enabled = True Me.menuDataMange.Enabled = True Case Else
Me.subMenuClient.Enabled = False Me.menuDataMange.Enabled = False End Select End Sub
(5)单击各个菜单或子菜单时显示相应的窗体。
24
基本语法是:From.Show。各个子菜单与窗体的对应关系如表5-3所示
表5-3 菜单编辑器
菜单名称 subMenuClient subMenuPassword menuDataMange menuDept menuEmloyee subMenuEmployee subRpt subRptBasic subPostion subRptRecord menuQuery menuValue help exit menuSystem 标题 用户管理 修改密码 基础数据管理 部门信息管理 职员信息管理 职员信息管理 报表 基本信息 入职信息 通讯录 考勤信息查询 考评信息查询 帮助 退出 系统管理 (6)退出系统。
处理流程:询问用户是否要以其他用户名登录,如果用户选择“确定”,卸载当前窗体并加载登录对话框;否则卸载全部窗体。
str = MsgBox(\是否要改变用户重新登录?\删除当前记录\ If str = vbOK Then Unload Me frmLogin.Show
frmLogin.txtPassword = \ frmLogin.txtUserName = \ Else End End If End Sub
5.3 用户登录模块
1.登录模块的IPO图 输入:用户名和密码 处理:
(1)登录窗体启动
25

