Hallo,
du solltest nur die von TControl geerbten Methoden
MouseDown und
MouseUp überschreiben. Dabei darfst du allerdings den Aufruf der geerbten Methoden nicht vergessen, da ansonsten ein über OnMouseDown/OnMouseUp verbundener Eventhandler abgeklemmt wird.
Delphi-Quellcode:
type
TMenuButton = class (TCustomPanel)
[...]
protected
procedure MouseDown (Button: TMouseButton; Shift: TShiftState;
X, Y: Integer); override;
procedure MouseUp (Button: TMouseButton; Shift: TShiftState;
X, Y: Integer); override;
end;
procedure TMenuButton.MouseDown (Button: TMouseButton; Shift: TShiftState;
X, Y: Integer);
begin
inherited;
Clicked := True;
Invalidate;
end;
procedure TMenuButton.MouseUp (Button: TMouseButton; Shift: TShiftState; X,
Y: Integer);
begin
inherited;
Clicked := False;
Invalidate;
end;
Gruß Hawkeye