Thursday, February 19, 2009

为Delphi的控制台程式添加图标

一般来说,在delphi中可以通过 Project – Options – Application 来加载图标,但是有时这个选项是灰掉的,特别在控制台程序中是不可用的。让它出现的方法如下:

在dpr文件uses部分添加 form
在begin之前添加 {$R *.res}
在运行的部分添加 Application.Initialize;

如果提示没有res文件的话,就自己建立一个,可以随意建立一个空文件用 工程名.res 命名,之后 Load Icon 就变成可用了。你可以注意到在我发布的源码中这些部分已经添加过,只是注释掉了。

这就是说,让 Load Icon 这个按钮不为灰色必须同时满足上面说的4个条件,即3处代码和一个res文件。这样实际上是认为此程序是一个基于Form的程序,而使得这个选项能够被使用。

但是在编译的时候,是否载入res文件则只由 {$R *.res} 是否存在决定,这就是说完全可以在载入图标之后将另外两处代码注释掉。