通过人力资源管理系统使得管理者快速高效地完成企业日常事务中的人事工作,降低了人力资源管理成本,使管理者能集中精力在企业战略目标;另一方面,通过软件及时收集与整理分析大量的人力资源管理数据,为企业战略决策的生成与实施控制提供强有力的支持,以提高组织目标实现的可能性。具体实现目标如下:系统采用人机对话方式,界面美观友好,信息查询灵活、方便、快捷、准确,数据存储安全可靠。键盘操作,快速响应。
图7
菜单编辑器界面
为了程序设计方便, 菜单设计为菜单数组, 其中所有的主菜单为一个菜单数组, 名称为: m(0)~ m(6),每个主菜单下的子菜单为一个数组(如 m1(0)~m1(13)) 。详细设置如表 1 所示。表1 主菜单名称 m(0) m(1) m(2) m(3) m(4) m(5) m(6) 菜单名称和菜单标题设置 主菜单标题 1000 1012 1016 1029 1036 1041 1046 子菜单
名称 m1(0)~m1(13) m2(0)~m2(2) m3(0)~m3(14) m4(0)~m4(7) m5(0)~m5(3) m6(0)~m6(3) m7(0)~m7(1) 子菜单标题 1001~1011 1013~1015 1017~1028 1030~1035 1037~1040 1042~1045 1047~1048
3.使用 TreeView 控件创建树状菜单 树状菜单的实现主要使用了 Treeview 控件的 Nodes 集合中的 Add 方法, 该方法可以向 Nodes 集合中添加一个 Node 对象,从而实现树状菜单。 在使用 TreeView 控件前应将其添加到 frmMain 窗体中,添加方法为:在工具箱中选取 TreeView 控件,将鼠标放置在 frmMain 窗体上,当鼠标指针变成一个十字架时,按住鼠标左键同 时拖动鼠标,当达到所需要控件的大小时放开鼠标左键,这时 TreeView 控件将被添加到窗体中。 如果要将 TreeView 控件中显示的内容带图标,应在窗体上添加一个 ImageList 控件。 4.使用 Image 控件数组创建图形按钮 图形按钮的构成原理是动态加载 Image 控件数组并设置其 Picture、Left、Top 属性。具体设 计思路如下: 窗体载入后,使用 Load 方法动态加载 12 个 Image 控件数组(初始状态为不可见) ,当用户 单击树状菜单的主节点时,根据其下的子节点的数量,动态设置 Image 控件数组的 Picture、Left 和 Top 属性。– 11 –
通过人力资源管理系统使得管理者快速高效地完成企业日常事务中的人事工作,降低了人力资源管理成本,使管理者能集中精力在企业战略目标;另一方面,通过软件及时收集与整理分析大量的人力资源管理数据,为企业战略决策的生成与实施控制提供强有力的支持,以提高组织目标实现的可能性。具体实现目标如下:系统采用人机对话方式,界面美观友好,信息查询灵活、方便、快捷、准确,数据存储安全可靠。键盘操作,快速响应。
实现上述功能,应首先在工具箱中选取Image控件,然后在窗体中添加1个Image控件数组,默认名为Image1,设置其Index属性为0,Visible属性为False。
5.代码设计
声明模块级变量,用于在一个窗体中的不同过程使用,代码如下:
Dim i As Integer, a As Integer
自定义函数blnPower,用于判断操作员的权限,如果有权限,返回值为True;如果无权限,返回值为False,代码如下:
Function blnPower(str As String) As Boolean
Dim rs1 As New ADODB.Recordset
rs1.Open "select * from 权限信息表 where 操作员='" & czy & "'", Cnn, adOpenKeyset, adLockOptimistic If rs1.RecordCount > 0 Then
If rs1.Fields(str) = False Then
blnPower = False
Else
blnPower = True
End If
End If
rs1.Close
End Function
窗体载入时,设置状态栏和Image1(0)控件数组的相关属性、完成由数字菜单到字符串菜单的转换、添加树状菜单及动态加载Image1控件数组等,代码如下:
Private Sub Form_Load()
Dim pnlX As Panel
'添加面板,并将它们设置为目录
sbStatusBar.Panels(1).AutoSize = sbrContents
sbStatusBar.Panels(1) = mytag
Set pnlX = sbStatusBar.Panels.Add
pnlX.AutoSize = sbrContents
pnlX.text = "当前操作员: " & czy
Set pnlX = sbStatusBar.Panels.Add
pnlX.Style = sbrDate
Set pnlX = sbStatusBar.Panels.Add
pnlX.Style = sbrTime
'设置图形按钮的初始位置
Image1(0).Left = 4000: Image1(0).Top = 2625
'将VB资源管理器中的字符串添加到菜单中
On Error Resume Next
Dim ctl As Control, sCtlType As String
For Each ctl In Me.Controls
sCtlType = TypeName(ctl)
If sCtlType = "Menu" Then
ctl.Caption = LoadResString(CInt(ctl.Caption))
End if
Next
'添加树状菜单
Dim nodX As Node
Set nodX = TreeView1.Nodes.Add(, , "X1", "基本资料管理", 1)
– 12 –