在IMAGE的ONMOUSEOVER事件中改变MOUSE图标资源。

解决方案 »

  1.   

    在image控件的OnMouseMove事件中添加更换凸标的代码的代码就可以了
      

  2.   

    直接设置Image的Cursor属性就可以了。
      

  3.   

    image1.cursor:=crhandpoint;
    如果不是DELPHI本身自带的鼠标图标,方法如下.
    方法一 用Loadcursorfromfile()从外部调入图标作为光标
      Loadcursorfromfile()函数可以读*CUR,*ICO,*ANI为后缀的文件作为光标,其中ICO为彩色图标格式(可用Image Editor制作),ANI为动画光标格式。以下为打开一图标作为光标的演示程序段,当光标移动到测试区域内光标会变成选定的图案;
      {设:opendialog1:Topendialog;Bitbtn1:Tbitbtn}
      procedure TForm1.BitBtn1Click(Sender:TObject);
      var tt:pchar;size:integer;s:string;
      begin
      if opendialog1.Execute then
      begin
      size:=length(opendialog1.filename);
      getmem(tt,size);
      s:=opendialog1.filename;
      strpcopy(tt,s);
      screen.cursors[2]:=loadcursorfromfile(tt);
      bf.cursor:=2;
      freemem(tt,size);
      end;
      end;
      方法二 从资源文件加载彩色光标
      用方法一发送程序时必须包含*CUR文件,因而从资源文件中加载彩色光标是更可行的方法。用图标存放彩色光标,使用时把图标存入临时文件,用Loadcursorfromfile()从临时文件读出彩色光标。
      程序段:
      procedure ZloadfromResourse(screenindex:integer;name:Pchar);
      var td:ticon;
      begin
      try
      td:=ticon.Create;
      td.Handle:=LoadIcon(Hinstance,name);
      td.SaveToFile(′temp.cur′);
      screen.Cursors[screenindex]:=loadcursorfromfile(′temp.cur′);
      deletefile(′temp.cur′);
      finally
      td.free;
      end;
      end;
      此程序把名字为name的图标变为序号为screenindex的光标;
      例:
      ZloadfromResourse(2,′myicon′);
      Form1.cursor:=2;
      注意:′myicon′这个图标一定要在资源文件中,否则会出现异常。 
      

  4.   

    在MOUSEMOVE事件中让鼠标IMAGE的Cusor属性改变一下就可以了
    procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    begin
      image1.Cursor :=crHandPoint;
    end;然后离开IMAGE的时候在把CURSOR改为crDEFAULT就可以了
      

  5.   

    同意chendaiyin(冷血的程序员)