Filtering input messages in CLX is not simple. There appears to be nothing like the VCL's OnMessage
.
You can stop mouse wheel events being handled by CLX page controls with a simple interposer. Add this code to your main form, before the declaration of your main form class.
type
TPageControl = class(QComCtrls.TPageControl)
protected
function DoMouseWheel(Shift: TShiftState; WheelDelta: Integer;
const MousePos: TPoint): Boolean; override;
end;
And then in the implementation section of the unit, add this:
function TPageControl.DoMouseWheel(Shift: TShiftState; WheelDelta: Integer;
const MousePos: TPoint): Boolean;
begin
Result := True;
end;
If you have a number of page controls on different forms then you should declare the interposer in a unit that can be shared by all the forms in your app. Or maybe even derive a proper grown-up sub-class.