资源档有什麽用处呢?最重要的有两个地方
1.国际发行:我们将Application中所有的文字从Resource用读取,那麽,只要更动
            Resource档的内容,就可以用不同语言的方式来显示。
2.管理资源:例如说,我们的AP中用了数百张的图片或声音,不用Resource档的话,
            在发行出去的AP中,就必需有数百个图形、声音档,那似乎不太好,使
            用Resource档,便可以将这些图形、声音放进一个.Res档。

使用RC.exe来Compiler我们所定义的Resource档, RC.EXE在vb5.0光碟中的/TOOLS/RESOURCE

Resources 可分成两大部份:

- String resources (text strings such as "Hello World").
- Binary resources (icons, bitmaps, cursors, sounds, video等)

String Resources

语法:

STRINGTABLE [load-option] [mem-option]
BEGIN
stringID string
.
    .
    .
END

叁数说明 :
- load-option 可以是以下两种

Option Description
------ -----------
PRELOAD Resource is loaded immediately.
LOADONCALL (Default) Resource is loaded when called.

- mem-option 可以是以下三种

Option Description
------ -----------
FIXED Resource remains at a fixed memory location.
MOVEABLE Resource can be moved if necessary in order to compact memory.
DISCARDABLE Resource can be discarded if no longer needed.
- stringID  自行定义的integer,用来定义字串 resource.

- string    我们定义的字串,字串前後要用双引号(")将之包围起来,字串长度不可
超过255 bytes,而且字串要在同一行 BINARY RESOURCES
语法: nameID keyword [load-option] [mem-option] filename 叁数: - nameID 定义一个於以下keyword类别中,一个唯一的名称或数字,即,有三个BITMAP
类别的Resource,其nameID可以分别为1,2,3不重覆,而另有三个ICON的资源
,其nameID亦可分别为1,2,3,不会和BITMAP的1,2,3相冲突。注:ICON类别
的nameID不可以为0,0保留给 Visual Basic icon。nameID亦可以为字串

- keyword 定义资源类别

Option Description
------ -----------
BITMAP Defines a bitmap (.BMP)
CURSOR Defines a cursor (.CUR)
ICON Defines an icon (.ICO)
SOUND Defines a wave file (.WAV)
VIDEO Defines a video file (.AVI)

- load-option

Option Description
------ -----------
PRELOAD Resource is loaded immediately.
LOADONCALL (Default) Resource is loaded when called.

- mem-option

Option Description
------ -----------
FIXED Resource remains at a fixed memory location.
MOVEABLE Resource can be moved if necessary in order to compact memory.
DISCARDABLE Resource can be discarded if no longer needed.

default for binary resources is MOVEABLE. - filename 资源所在的档名

Compiler的语法:

rc /r [options] SourceFile(.RC) 

- /r		只Compiler .RC file , not linked to any executable.

可用rc /? 来查语法

EXAMPLE

RC /r /fo TEST32.RES TEST.RC

上面的表格中是读取Test.RC的定义,而产生TEST32.RES,这个档便是我们程式设计中所需的资源档,而在vb5.0中如何来使用呢,在 "专案功能表 的 新增档案"中来选取该Resource file(.RES) ,之後在专案总管中,会出现

- ---Project1
+-- 表单
--- 相关文件
|
------TEST32.RES

那便可以使用 LoadResString LoadResPicture LoadResData来抓取相关的资料了 以下是Test.RC的内容,而BitMap, Icon写的档名,请自行更改成您对映的档案

#define IDS_HELLO    1
#define IDS_GOODBYE 2 STRINGTABLE
BEGIN
IDS_HELLO, "Hello"
IDS_GOODBYE, "Goodbye"
3, "This is a Test"
END
STRINGTABLE
BEGIN
101, "您好"
102, "再见了"
103, "这是一个测试"
END /////////////////////////////////////////////////
// Bitmap
////////////////////////////////////////////////
1 BITMAP "CLI.BMP"
101 BITMAP "CLI2.BMP"
BITMAP3 BITMAP "多多.BMP" ////////////////////////////////////////////////
// ICON
///////////////////////////////////////////////
1 ICON CLIENT.ICO

以下是在form中,需3个Command Button 3个Label 1个PictureBox 另需在 专案功能表 中选 新增档案 并进而选取Test32.Res

Option Explicit

Private Sub Command1_Click()
Call ShowRtn(0)
End Sub Private Sub ShowRtn(ByVal i As Long)
Label1.Caption = LoadResString(i + 1)
Label2.Caption = LoadResString(i + 2)
Label3.Caption = LoadResString(i + 3)
Set Picture1 = LoadResPicture(i + 1, vbResBitmap)
End Sub Private Sub Command2_Click()
Call ShowRtn(100)
End Sub Private Sub Command3_Click()
Set Picture1 = LoadResPicture("BITMAP3", vbResBitmap)
End Sub

资源文件(.RES)的应用的更多相关文章

  1. 34.Android之资源文件res里drawable学习

    我们经常看到android工程资源文件res下drawable如ldpi.mdpi.hdpi.xhdpi.xxhdpi文件,今天我们学习了解下. (1)drawable-hdpi里面存放高分辨率的图片 ...

  2. android—资源文件(res)的引用

    android项目中res目录下的文件含义各不相同主要有两种方式引用它们 例子:在string.xml中定义一个<string name="hello">Hello W ...

  3. Delphi 资源文件( .res)

    一.    现在的Windows应用程序几乎都使用图标.图片.光标.声音等,我们称它们为资源(Resource).最简单的使用资源的办法是把这些资源的源文件打入软件包,以方便程序需要的时候调用.资源是 ...

  4. delphi 资源文件详解

    delphi资源文件详解 一.引子: 现在的Windows应用程序几乎都使用图标.图片.光标.声音等,我们称它们为资源(Resource).最简单的使用资源的办法是把这些资源的源文件打入软件包,以方便 ...

  5. java 从jar包中读取资源文件

    在代码中读取一些资源文件(比如图片,音乐,文本等等),在集成环境(Eclipse)中运行的时候没有问题.但当打包成一个可执行的jar包(将资源文件一并打包)以后,这些资源文件找不到,如下代码: Jav ...

  6. (转)java 从jar包中读取资源文件

    (转)java 从jar包中读取资源文件 博客分类: java   源自:http://blog.csdn.net/b_h_l/article/details/7767829 在代码中读取一些资源文件 ...

  7. 深入jar包:从jar包中读取资源文件getResourceAsStream

    一.背景 我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等). 在单独运行的时候这些简单的处理当然不会有问题.但是,如果我们把代码打成一个jar包以后,即使将资源文件一并打包,这些东西也找不 ...

  8. [Java基础] 深入jar包:从jar包中读取资源文件

    转载: http://hxraid.iteye.com/blog/483115?page=3#comments 我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等).在单独运行的时候这些简单的 ...

  9. 深入jar包:从jar包中读取资源文件

    我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等).在单独运行的时候这些简单的处理当然不会有问题.但是,如果我们把代码打成一个jar包以后,即使将资源文件一并打包,这些东西也找不出来了.看看 ...

随机推荐

  1. EF的泛型封装 写的很好 转自Fly_Elephant http://www.cnblogs.com/xiaofeixiang/p/4188600.html?utm_source=tuicool

    Entity Framework本身的增删改查其实 已经很方便了,不过做项目的时候用的多了也就觉得有点累了,每个业务实体基本上都涉及到到了增删改查这四个基本的要素,至于封装每个公司可能都不一样,接口, ...

  2. C++函数声明和定义深度解析

    概述: 声明是将一个名称引入一个程序. 定义提供了一个实体在程序中的唯一描述. 声明在单个作用域内可以重复多次(类成员除外),定义在一个给定的作用域内只能出现一次. 一个定义就是一个声明,除非: 它定 ...

  3. c++ primer plus 习题答案(7)

    p427.4 //头文件: #include<iostream> #ifndef STACK_H_ #define STACK_H_ typedef unsigned long Item; ...

  4. 自定义jquery表格插件

    以前一直都是再用easyui插件来实现各种功能,但是easyui太过于庞大,使用越多对服务器负载影响越大. 基于此,在模仿easyui的dataGrid表格插件的同时,自己去封装了一个.实现了基本的j ...

  5. 论left-pad的实现

    这两天微博上看到左耳朵耗子吐槽了一下node社区的left-pad的代码,原po链接 我也思考了一下 怎么用实现一个left-pad比较合适,上图代码确实比较搓 leftpad功能,就是字符串前面拼指 ...

  6. docker4dotnet

    docker4dotnet #1 – 前世今生 & 世界你好   作为一名.NET Developer,这几年看着docker的流行实在是有些眼馋.可惜的是,Docker是基于Linux环境的 ...

  7. SIGAR - System Information Gatherer And Reporter

    https://support.hyperic.com/display/SIGAR/Home 收藏一篇: http://www.cnitblog.com/houcy/archive/2012/11/2 ...

  8. 阻止系统自动睡眠的小软件,附C#制作过程

    原文 http://www.cnblogs.com/h46incon/p/SleepPreventer.html 因为有时下载东西的时候,不想让电脑自动深入睡眠,所以就开启了离开模式.这样不但不节能环 ...

  9. [置顶] c++播放Flash文件

    最近由于需要在程序中使用Flash播放,所以学习了下如何播放Flash,这里使用atl库中的CAxWindow来处理我们要播放的Flash!由于Flash的很多接口我们都不知道,所以可以参考前一篇文章 ...

  10. HDU - 2276 Kiki &amp; Little Kiki 2

    Description There are n lights in a circle numbered from 1 to n. The left of light 1 is light n, and ...