我在其他地方需要调用image1的MouseUp事件!
我用的是:if 条件成立 then image1.OnMouseUp(sender);
它报 Not enough actual parameters(没有足够的参数)的错误!
请问应该怎么写呀?

解决方案 »

  1.   

    楼上的方法不行!
    我不是在MOUSE事件里进行判断。
    shift,x,y未定义。
      

  2.   

    你对shift,x,y定义不就完了,只是一个参数而已。
      

  3.   

    巨寒!也许是我笨,还是不会。
    我给出具体代码:
    procedure Tform1.MouseImageMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
      if not (ssleft in shift) then
        exit;
      TImage(sender).Picture.Bitmap.LoadFromResourceID(HInstance,TImage(sender).Tag+1);
      pressed:=True;
    end;procedure Tform1.MouseImageMouseMove(Sender: TObject; Shift: TShiftState;
      X, Y: Integer);
    begin
      If Not (ssLeft in shift) then exit;
      if (x<=0) or (x>=Timage(sender).width) or
          (y<=0) or (y>=TImage(sender).height) then
      begin
        TImage(sender).Picture.Bitmap.LoadFromResourceID(HInstance,
        TImage(sender).Tag);
        Pressed:=False;
      end
      else
      begin
        TImage(sender).Picture.Bitmap.LoadFromResourceID(HInstance,
        TImage(sender).Tag+1);
        Pressed:=True;
      end;
    end;procedure TForm1.MouseImageMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
      if not pressed then
        exit;
      TImage(sender).Picture.Bitmap.LoadFromResourceID(HInstance,TImage(sender).Tag);
      case TImage(sender).Tag of
        2:
          Form1.Close;
        4:
        begin
          //
        end;
      end;
    end;
      

  4.   

    form1里的image控件的OnMouseDown事件指向MouseDown,依次类似;我在timer控件的ontimer事件里写了
    procedure TForm1.Timer1Timer(Sender: TObject);
    begin
      i:=i+1;//i的初始值是1
      if i= 10 then
      begin
        某个IMAGE控件的MouseUp事件触发;//这个事件应该怎么写?
        i:=0 
      end; 
    end;
      

  5.   

    发送MOUSEUP的消息。如果自己要定义MOUSEUP的事件重写该消息
      

  6.   

    或者
    procedure TForm1.BitBtn1Click(Sender: TObject);
    var
     shif:TshiftState;
     but:TMouseButton;
    begin
       Image1MouseUp(image1,but,shif,0,0);
    end;
      

  7.   

    先谢谢tianxueshan(tianxueshan)和回帖的朋友们!
    当时我就是因为BitBtn太难看了,所以用的图片做按钮!
    分别在Mouse事件里改变图片,从而实现按键的效果!
    本来是在IMAGE的ONCLICK事件里写的,后改在ImageMouseUp事件写了!
    就是不知道怎么调用