微信公众号 
图码生活

每天发布有五花八门的文章,各种有趣的知识等,期待您的订阅与参与
电脑报 1992-2001 十年文章全集
电脑报 1992-2001 十年文章全集
包含从 1992 年 - 2001 年间,两万余篇期刊文章,查询最少输入两个字符
随便看看
读取中
读取中
标题在Delphi中用好图标资源
栏目软件世界
作者邓家宏
发布2001年29期
  图标是组成应用程序的重要资源,我们的设计目标是让程序标题栏上的图标交替显示,形成动画效果。
   方法一:调用图标文件
  1.首先在窗体中添加一变量,控制图标交替显示,语句如下:
  var
  Form1: TForm1;
  ico:integer;//添加这一句
  双击窗体为其OnCreat事件添加代码,如下:
  ico:=1
  2.在窗体中添加一时钟控件,设置其Interal属性为100(即两个图标交替出现的时间间隔),为OnTimer事件添加代码,如下:
  if ico=1 then
  begin
  form1.icon.LoadFromFile('d:\amydocu\ico1.ico')//显示图标1
  ico:=2
  end
  else
  begin
  form1.icon.LoadFromFile('d:\amydocu\ico2.ico') //显示图标2
  ico:=1;
  end;
  3.运行窗体,即可得到动画图标。
   方法二:利用程序中的图标资源
  方法一设计出的程序在发布时,必须带上图标文件,否则无法运行。为了克服这一缺点,我们可以将图标文件做成资源文件,将其包含在执行文件中,使程序更专业化,他人想轻易改变图标也较困难。
  1.首先建立资源文件demo.rc,它是一个文本文件,包含如下内容:
  ico1 icon D:\amydocu\ico1.ico
  ico2 icon D:\amydocu\ico2.ico
  2.在DOS提示符下利用Delphi提供的资源编译器brcc32.exe将其编译成demo.res,命令如下:
  brcc32 demo.rc
  3.将生成的demo.res加入程序中,可以在窗体中加入如下代码:
  implementation
  {$R *.DFM}
  {$R d:\amydocu\resource.res}
  4.使用图标资源,将方法一中时钟控件的OnTimer事件改为如下代码:
  if ico=1 then
  begin
  form1.Icon.Handle:=Loadicon(hinstance,'ico1');
  ico:=2;
  end
  else
  begin
  form1.Icon.Handle:=Loadicon(hinstance.'ico2');
  ico:=1;
  end;
  5.编译运行,得到和方法一同样的效果,但程序更加精炼。