放一个IMAGE,Visiable设为FALSE,当OnMouseMove时,将Visiable设为TRUE不就可以
了吗?

解决方案 »

  1.   

    用一个IMAGE1放背景图片,在这个IMAGE1中放另外一个IMAGE2控件,Visiable为FALSE;在IMAGE1的OnMouseMove中判断X,Y值是否是自己指定的区域,如果是IMAGE2的Visiable为TRUE;hint自己写,同时popmenu也可以显示
      

  2.   

    以下是我实现mouse移动到图片上方显示,移开image图片消失的程序.
    你可以在这个方法的基础上自己实现其他的功能和优化.unit Unit1;
    interface
    uses
      Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
      ExtCtrls, StdCtrls;
    type
      TForm1 = class(TForm)
        Image2: TImage;
        procedure FormCreate(Sender: TObject);
        procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,
          Y: Integer);
        procedure Image2MouseMove(Sender: TObject; Shift: TShiftState; X,
          Y: Integer);
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    var
      Form1: TForm1;
      bmpshow:boolean;
    implementation
    {$R *.DFM}
    procedure TForm1.FormCreate(Sender: TObject);
    begin
        bmpshow:=false;
    end;
    procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    begin
        if bmpshow=true then
        begin
            bmpshow:=false;
            try
                 image2.Free;
                 image2:=timage.Create(self);
                 image2.Parent:=self;
                 image2.Left:=64;
                 image2.top:=40;
                 image2.height:=217;
                 image2.width:=273;
                 image2.OnMouseMove:=Image2MouseMove;
            except
            end;
        end;
    end;
    procedure TForm1.Image2MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    begin
        if bmpshow=false then
        begin
            bmpshow:=true;
            image2.Picture.Bitmap.LoadFromFile('d:\图片.bmp');
        end
    end;
    end.
      

  3.   

    有类似的控件。
    要么自己捕捉消息 CM_MOUSELEAVE、CM_MOUSEENTER;
      

  4.   

    当你用Image控件来切换时,我想你一定会后悔的因为在图片切换时会闪得利害(我是深受其害)。最好的办法是自己画出来。方法是:用两个Image控件,一张保存背景图,一张保存需要切换的图片.在Form的Paint事件中将图片画到窗体上。画的时候要判断光标的位置,即如果光标在指定区域内则画出背景后再画出切换的图片,否则的话只画背景。我的意思明白吗?