首先利用光标编辑软件建立好光标文件并保存,在这里假设保存到ac.cur中。然后利用文本
编辑器建立一个资源文件,文件的内容如下:
   /****************************************************************************   aa.rc   Samples Resource file by CR   *****************************************************************************/
   NewCursor CURSOR "ac.cur"   #define NewCursor 1
 
    将文件保存到aa.rc文件中,记住aa.rc和ac.cur要保存到同一个目录。在Delphi的Bin目录下
有一个brcc32.exe文件,调用brcc32将aa.rc编译成为aa.res文件。(如果你有Borland C++系列
软件的话,利用其中的Resource WorkShop可以实现从生成图标到编译成RES文件的全过程,但是
要注意的是,只有在Borland C++4.5及以后的版本的Resource WorkShop才是32位的,而以前的
都是16位的,在16位Resource WorkShop下生成的res文件是无法在32位Delphi下使用的)
    打开Delphi,Delphi会自动生成一个Project1的工程,打开Project1.dpr,你可以看到其中有
一行程序: {$R *.RES}  。这个就是Project1缺省的资源文件,在这行下面再加一行:{$R aa.RES}
这样就将你自己的资源文件加入到工程中了。
    在Unit1中加入如下的常量定义:
      const
        crMyCursor = 5;
    在Form1的OnCreate事件中加入如下代码:
    procedure TForm1.FormCreate(Sender: TObject);
      begin
        Screen.Cursors[crMyCursor] := LoadCursor(HInstance, 'NewCursor');
        ShowMessage(IntToStr(Screen.Cursors[crMyCursor]));
        Cursor := crMyCursor;
      end;
    做完上面的步骤以后,按F9运行程序,这时你就会看到窗口的图标变成了你自己建立的图标。
同样,要使其它的控件使用自定义图标也很简单,只要将Form1的OnCreate事件中的语句
“Cursor := crMyCursor; ”改为“Control.Cursor := crMyCursor;”就可以了。其中Control
为控件的名称。