您的位置: 网站首页 > 程序开发 > Visual Basic程序开发相关文章 > Visual Basic程序开发相关文章 > 【6. VB中资源文件的具体使用方法】

6. VB中资源文件的具体使用方法

 

          如何在VB中建立和使用资源文件。

   首先,我们先了解一下windows应用程序中一般经常使用的资源:

   位图:位图是用于创建应用程序用户界面的图像。例如,用户可以为工具栏按钮创建一套位图,也可以创建在其它窗口上显示的位图。一般来说,都是在图像编辑器中创建位图,然后再将该位图添加到资源文件中。

  图标:图标是类似于位图的小图像,然而,虽然位图可以具有任意大小的尺寸,但是图标却小得多,通常为16*16像素或32*32像素。图标使用的很多方法与位图一样。然而,图标通常被用作代表最小化应用程序的图象、代表应用程序文档类型的图像和其它类型的应用系统。

   字符串表:就是指文本串的一个表格,通常来说字符串用来显示菜单命令的提示、对话框中和消息框中显示的信息。要访问串表格中的文本串,需引用串的ID,它与定义表格的源文件中的串相联系。

   光标:光标是代表鼠标在屏幕上的位置的图像。尽管windows 系统定义和许多类型的光标,但用户也可以创建自己需要的光标。

   定制资源:定制资源是用户想存储在其应用程序资源文件中的任何类型的数据。这些数据可以是文本文件或二进制文件,用户可以用任何喜欢的方式定制资源。资源文件只是作为存储区域。创建了定制资源,可以避免必须从磁盘文件中加载数据,因为数据随资源文件一起加载。

   对话框:对话框的资源定义包括样式标志(控制对话框外观及行为的值)以及对话框中含控件的大小和位置。

   菜单栏:用户应用程序的菜单栏也可以在资源文件中定义。可以在资源文件中指定命令和命令的ID,以用命令在菜单中的位置。

   加速器:加速器也称为热键。它们是用户快速选取命令时所按下的键,使用热键时,不必在应用程序的菜单中寻找命令。加速器在一个表格中定义,这个表将按键与命令资源的ID联系起来。

   那么在VB开发环境中如何使用这些资源呢?

   1、添加资源文件编辑器,

   启动VB6.0的IDE集成环境,新建一个工种。点选菜单“Add -Ins”下的“Add -in Manager”,在弹出的对话框的列表框中选择“VB Resource (RES) Editor”,单击“OK“后退出对话框。这样在“Tools”菜单栏中就有一项“Resource Editor”了。打开这个工具就可以进行资源文件的编辑了。

   2、编辑资源文件

   在资源编辑器中编辑资源文件非常简单。它可是编辑我们在上面先提到的位图、图标、光标、字符串及定制资源五种类型的资源,如图1所示:

   在进行编辑时,点击相应的图标就可以添加资源了。

   编辑资源的方法也很容易,以添加图片为例看一看添加位图的方法:点击添加位图按钮,在弹出的对话框中选择一个位图文件,单击“OK”后,位图的添加就完成了,在这里要注意属性按钮,点击它以后,可以选择请语言版本并输入资源的ID号,这个ID号是标识一类资源的唯一编号,必须记住资源的ID号,以使在应用程序中调用。编辑好资源后,关闭资源编辑器,资文件自动加入新建的工种内。另外,也必须将资源文件保存。其它资源的编辑方法也大体上一样。

   3、使用资源文件,在应用程序中调用资源文件与直接使用资源基本上是一致的。对了,在一个工种中只能保存一个资源文件,在使用资源文件之前,请必须保证资源已经加入到资源文件中了。

   调用资源文件中资源的函数有:

   LoadResString 返回一个文本字符串。语法:LoadResString(index) index必需是一个整数,它用来指定资源文件中数据的标识符(即经常提到的ID号),如果ID号为1的资源保留给应用程序图标。

   LoadResPicture 用以从资源 (.res) 文件装载位图、图标或光标。它的语法:

   LoadResPicture(index, format)

   LoadResPicture 函数的语法包含下列部分:

   参数 描述

   index 一个整数或字符串,它用来指定资源文件中数据的标识

   符 (ID) 。ID标识符为 1 的资源保留给应用程序的图标。

   format 必需的。一个数值或常数,如下列“设值"中所描述的,

   指定返回数据的格式。

   用于 format 的设置值有:

   常数 值 描述

   vbResBitmap 位数 0 位图资源

   vbResIcon 图标 1 图标资源

   vbResCursor 2 光标资源

   说明:可以使用 LoadResPicture 函数代替对存储在 Form 或控件的 Picture 属性中的图形的引用。

   LoadResData 返回一个Byte数组,用以从资源 (.res) 文件装载若干可能类型的数据。语法为:

   LoadResData(index, format)

   LoadResData 函数的语法包含下列部分:

   部分 描述

   index 必需的。一个整数或字符串,它用来指定资源文件中数据的标识

   符 (ID)。ID 标识为 1 的资源保留给应用程序的图标。

   Format 必需的。一个数值,它用来按照下列“设置值"中的描述,指定返

   回数据的原始格式。该数值也可以是用户定义资源的字符串名。

   设置值 用于 format 的设置值有:

   设置值 描述

   1 光标资源

   2 位图资源

   3 图标资源

   4 菜单资源

   5 对话框

   6 字符串资源

   7 字体目录资源

   8 字体资源

   9 加速键表

   10 用户定义资源

   12 群组光标

   14 群组图标

   说明:LoadResData 从资源文件装载的数据可以达到 64K。

   最后我们用一个简单的例子来说明这几个函数的用法:

   (1)建立一个窗体,在窗体上放置三个按钮,一个图片框用来显示图片、图标。其属性如图2所示。

   按照前面讲述的方法添加资源文件编辑器并建立工程文件,里面包含一个字符串,位图、图标、光标和一个自定义的资源。

   程序代码如下所示:

   Private Sub cmdLoadData_Click()

   Dim tt As Byte

   End Sub

   Private Sub cmdLoadPicture_Click()

   picTest.Picture = LoadResPicture(101, 1)

   ''如何为0表示位图,为2表示光标

   End Sub

   Private Sub cmdLoadstring_Click()

   Dim str As String

   str = LoadResString(101)

   MsgBox str

   End Sub