5.3.3 添加工具栏和状态栏
VB 6.0默认状态在工具箱中是没有工具栏和状态栏控件的,需要手工添加,方法为在工具箱中点击鼠标右键,在弹出的快捷菜单中选择“部件”,在“部件”对话框中选择“Microsoft Windows Common Controls 6.0”(见图5-9),点击“应用”,在工具箱中即可看见多增加了一些控件。
图5-9 部件选择对话框
1)创建工具栏
从工具箱中选择“ToolBar”控件,在主窗体菜单项的下面画一个矩形区域作为常用工具栏,松开鼠标左键,会自动弹出“工具栏向导”,按向导的设置,任意添加10个按钮到工具栏中。然后对工具栏属性进行设置。
首先我们来设置工具栏中要显示的图像。在工具栏创建好后,我们会发现在主窗体中多了一个矩形的控件,实际上它是一个ImageList(图像列表控件),工具栏上显示的图像就是由它存放的。在这个控件上右击鼠标,选择“属性”选项,在弹出的“属性页”对话框中选择“图像”选项卡(见图5-10)。将原有的图像全部删除,重新插入6幅图片(图片自己准备,像素不要太大,格式采用JPG即可),在此对话框中,每个图像有个索引号,这个索引号就是工具栏引用图像的标记。设置好后点击“确定”(此时工具栏上可能只有前六个按钮有图像,不必理会)。
图5-10 图像列表属性页对话框
图像设置好后,我们来调整工具栏属性,让它跟图片匹配,并且符合我们设置的外观要求。在工具栏区域右击鼠标,选择“属性”选项,在弹出的“属性页”对话框中选择“按钮”选项卡(见图5-11)。
图5-11 工具栏属性页对话框
其中,“索引”是工具栏按钮的标记,10个按钮就有10个索引,在此对话框中需要设置索引、标题、样式和图像等几个选项,图像值就是我们刚才设置的图像列表中各图像的索引号。工具栏按钮属性设置如下:
表5-3 工具栏按钮属性设置
注:工具栏按钮对照的图像索引号可根据需要调整,主要目的就是选择合适的图像标记
设置好后的工具栏效果参见图5-2主界面效果。
2)创建状态栏
从工具箱中拖一个名为StatusBar的控件,在主窗体的下边缘部分画一个状态栏区域。将该控件的名字修改为“status”。在状态栏控件上右击鼠标,选择“属性”选项,弹出状态栏属性页(图5-12)。
图5-12 状态栏属性页对话框
点击“插入窗格”按钮,使窗格增加到4个,按下表所示设置状态栏属性。
表5-4 状态栏属性设置
注:状态栏显示的用户信息将在系统登录的时候获得
主窗体设计好后,对主窗体编码如下(其中有些调用的窗体暂时没有,先把调用代码写在这里,后面再实现)。
代码5-3 主窗体frmMain.frm代码
′****************************************************************************
Option Explicit ′强制类型检查声明
′===============================
′菜单项代码
′===============================
Private Sub mnuExit_Click() ′退出主界面菜单项
Unload frmMain
End Sub
Private Sub mnuLogOff_Click() ′重新登录调用公共模块“modOther”中的函数
Call loggedOff
End Sub
′*****************************************************
′通过菜单项调用子窗体
′*****************************************************
Private Sub mnuAddBookInfo_Click() ′调用“图书信息”子窗体
frmBookInfo.Show
frmBookInfo.SetFocus
End Sub
Private Sub mnuAddPublicationInfo_Click() ′调用“出版社信息”子窗体
frmPubInfo.Show
frmPubInfo.SetFocus
End Sub
Private Sub mnuCategory_Click() ′调用“图书分类”子窗体
frmCatInfo.Show
frmCatInfo.SetFocus
End Sub
Private Sub mnuClassInfo_Click() ′调用“班级信息”子窗体
frmClassInfo.Show
frmClassInfo.SetFocus
End Sub
Private Sub mnuSearchBookInfo_Click() ′调用“图书信息查询”子窗体
frmSrchBookInfo.Show
frmSrchBookInfo.SetFocus
End Sub
Private Sub mnuSearchIssue_Click() ′调用“借出图书查询”子窗体
frmSrchIssue.Show
frmSrchIssue.SetFocus
End Sub
Private Sub mnuSearchMemberInfo_Click() ′调用“读者信息查询”子窗体
frmSrchMember.Show
frmSrchMember.SetFocus
End Sub
Private Sub mnuSettingFineAmt_Click() ′设置超出天数每天的罚款金额
Dim value As String
value=InputBox(″输入罚款金额标准″,″设置...!!!″)
If Not IsNumeric(value)Then
MsgBox″数据不匹配!″,vbCritical,″输入错误″
Exit Sub
End If
fineAmt=Str(value)
SaveSetting App.Title,″Settings″,″FineAmt″,CStr(value)
′将设置的参数存入注册表
End Sub
Private Sub mnuMaxDays_Click() ′设置最多允许借阅天数参数
Dim value As String
value=InputBox(″输入最多允许借阅天数″,″设置...!!!″)
If Not IsNumeric(value)Then
MsgBox″数据不匹配!″,vbCritical,″输入错误″
Exit Sub
End If
maxDays=Str(value)
SaveSetting App.Title,″Settings″,″MaxDays″,CStr(value)
′将设置的参数存入注册表
End Sub
Private Sub mnuSettingUser_Click() ′设置系统用户信息 此项功能仅有管理员可设置
frmUser.Show
frmUser.SetFocus
End Sub
Private Sub mnuAddMemberInfo_Click() ′调用“读者信息”子窗体
frmMemberInfo.Show
frmMemberInfo.SetFocus
End Sub
Private Sub mnuTransIssue_Click() ′调用“借书”子窗体
frmIssue.Show
frmIssue.SetFocus
End Sub
Private Sub mnuTransReturn_Click() ′调用“还书”子窗体
frmReturn.Show
frmReturn.SetFocus
End Sub
Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) ′工具栏设置
Select Case Button.Index ′设置工具栏的时候要注意各项目间的匹配
Case 1
frmBookInfo.Show
frmBookInfo.SetFocus
Case 2
frmMemberInfo.Show
frmMemberInfo.SetFocus
Case 5
frmIssue.Show
frmIssue.SetFocus
Case 6
frmReturn.Show
frmReturn.SetFocus
Case 9
Call mnuLogOff_Click
Case 10
Call mnuExit_Click
End Select
End Sub
Private Sub MDIForm_Load() ′多文档窗体加载
frmMain.Show
End Sub
Private Sub MDIForm_Unload(Cancel As Integer)
′多文档窗体退出 调用“modOther”模块中的公共函数
On Error Resume Next
If ApplicationUnload()<>1Then
Cancel=True
End If
End Sub
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。