Page 1 of 1

Override/Catch Mouse Events

Posted: 11 Sep 2007 15:37
by Beardless2
Hello,

I am trying to catch mouse events on the VLC active X control in Delphi so that i may display a popupmenu when the user right clicks on the VLC control. I have not managed to do this yet, this is my code so far but it doesn't seem to work, can anyone help me?

type
TMyVideo = class(TVLCPlugin)
private
FOnMyMouseDown : TMouseEvent;
procedure WMLButtonDown (var Message: TWMLButtonDown); message WM_LBUTTONDOWN;
procedure WMRButtonDown (var Message: TWMLButtonDown); message WM_RBUTTONDOWN;
protected
procedure MyMouseDown(Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
published
property OnMyMouseDown: TMouseEvent read FOnMyMouseDown write FOnMyMouseDown;
end;


procedure TMyVideo .WMLButtonDown(var Message: TWMLButtonDown);
begin
inherited;
MyMouseDown(mbLeft,[ssLeft],message.XPos,message.YPos);
end;

procedure TMyVideo .WMRButtonDown(var Message: TWMLButtonDown);
begin
inherited;
MyMouseDown(mbRight,[ssRight],message.XPos,message.YPos);
end;

procedure TMyVideo .MyMouseDown(Button: TMouseButton; Shift: TShiftState; X: Integer; Y: Integer);
begin
if Assigned (FOnMyMouseDown) then FOnMyMouseDown(Self, Button, Shift, X, Y);

showmessage('My Mouse Down');

end;