首页 百科知识 添加工具栏和状态栏

添加工具栏和状态栏

时间:2022-10-21 百科知识 版权反馈
【摘要】:首先我们来设置工具栏中要显示的图像。图像设置好后,我们来调整工具栏属性,让它跟图片匹配,并且符合我们设置的外观要求。工具栏按钮属性设置如下:从工具箱中拖一个名为StatusBar的控件,在主窗体的下边缘部分画一个状态栏区域。在状态栏控件上右击鼠标,选择“属性”选项,弹出状态栏属性页。

5.3.3 添加工具栏和状态栏

VB 6.0默认状态在工具箱中是没有工具栏和状态栏控件的,需要手工添加,方法为在工具箱中点击鼠标右键,在弹出的快捷菜单中选择“部件”,在“部件”对话框中选择“Microsoft Windows Common Controls 6.0”(见图5-9),点击“应用”,在工具箱中即可看见多增加了一些控件。

img35

图5-9 部件选择对话框

1)创建工具栏

从工具箱中选择“ToolBar”控件,在主窗体菜单项的下面画一个矩形区域作为常用工具栏,松开鼠标左键,会自动弹出“工具栏向导”,按向导的设置,任意添加10个按钮到工具栏中。然后对工具栏属性进行设置。

首先我们来设置工具栏中要显示的图像。在工具栏创建好后,我们会发现在主窗体中多了一个矩形的控件img36,实际上它是一个ImageList(图像列表控件),工具栏上显示的图像就是由它存放的。在这个控件上右击鼠标,选择“属性”选项,在弹出的“属性页”对话框中选择“图像”选项卡(见图5-10)。将原有的图像全部删除,重新插入6幅图片(图片自己准备,像素不要太大,格式采用JPG即可),在此对话框中,每个图像有个索引号,这个索引号就是工具栏引用图像的标记。设置好后点击“确定”(此时工具栏上可能只有前六个按钮有图像,不必理会)。

img37

图5-10 图像列表属性页对话框

图像设置好后,我们来调整工具栏属性,让它跟图片匹配,并且符合我们设置的外观要求。在工具栏区域右击鼠标,选择“属性”选项,在弹出的“属性页”对话框中选择“按钮”选项卡(见图5-11)。

img38

图5-11 工具栏属性页对话框

其中,“索引”是工具栏按钮的标记,10个按钮就有10个索引,在此对话框中需要设置索引、标题、样式和图像等几个选项,图像值就是我们刚才设置的图像列表中各图像的索引号。工具栏按钮属性设置如下:

表5-3 工具栏按钮属性设置

img39

注:工具栏按钮对照的图像索引号可根据需要调整,主要目的就是选择合适的图像标记

设置好后的工具栏效果参见图5-2主界面效果。

2)创建状态栏

从工具箱中拖一个名为StatusBar的控件,在主窗体的下边缘部分画一个状态栏区域。将该控件的名字修改为“status”。在状态栏控件上右击鼠标,选择“属性”选项,弹出状态栏属性页(图5-12)。

img40

图5-12 状态栏属性页对话框

点击“插入窗格”按钮,使窗格增加到4个,按下表所示设置状态栏属性。

表5-4 状态栏属性设置

img41

注:状态栏显示的用户信息将在系统登录的时候获得

主窗体设计好后,对主窗体编码如下(其中有些调用的窗体暂时没有,先把调用代码写在这里,后面再实现)。

代码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

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈