其他语言

位置:IT落伍者 >> 其他语言 >> 浏览文章

Delphi学习使用资源文件-入门


发布日期:2018年05月07日
 
Delphi学习使用资源文件-入门

资源文件(*res)通过编译指令 $R 关联 譬如工程文件 Project 中的 {$R *res} 就是关联 Projectres 资源文件 我们直接写作 {$R Projectres} 不会有问题(但如果工程文件改名时 你也得随着改才行) 譬如

programProject;

uses

Forms

UnitinUnitpas{Form};

{$RProjectres}

begin

ApplicationInitialize;

ApplicationMainFormOnTaskbar:=True;

ApplicationCreateForm(TFormForm);

ApplicationRun;

end

这个资源文件中至少包含着文件图标 假如我们删除 {$R *res} 后编译 看前后对比图

这时我们可以通过代码 调用其他图标

procedureTFormFormCreate(Sender:TObject);

begin

ApplicationIconLoadFromFile(c:tempmyico);

end;

这样还是不好 如果运行程序的电脑没有这个文件呢? 最好让程序携带着它 这就要通过资源文件 让我们从头来过

新建一个 VCL Forms Application 并 Save All

并通过菜单 Project → View Souse 打开工程源文件

删除 {$R *res}

如图新建一个 Text 文件

文件编辑如下

MainIcon ICON ctempmyico

注意 其中的 ctempmyico 可以随便定义 但文件必须存在 另外其中的所有大小写无关 路径两边的双引号也可以省略

把它保存为 Projectrc 注意要保存在程序相同目录 文件名和工程文件名相同 后缀是 rc

如图把 Projectrc 添加到工程组

这时工程文件自动添加了一行 {$R Projectres Projectrc}

好了 编译执行程序 如图

注释

*rc 文件算是资源文件(*res) 的源文件 在程序编译过程中会编译成同名的 res 文件

上面的例子是个特例 一般我们不能使用和工程同名的资源文件

MainIcon ICON ctempmyico 中的 ICON 说明这是一个图标资源 MainIcon 是该资源的标识符 这个标识符应该是可以自定义的 不过在这个特例中 只能使用 MainIcon 因为程序要从同名的资源文件中查找标识为 MainIcon 的资源做图标

上一篇:用Delphi实现文件加密压缩技巧

下一篇:Delphi中SendMessage使用技巧