On 28.07.2016 0:13, Wolf wrote:
I enclose a little program where you can see the effects of pressing/rolling mouse keys. Vojtěch Čihák is correct in saying that OnMouseDown/Up can be used to distinguish whether the mousewheel is rolled when pressed or not. But then, why is Shift part of the procedure's parameters if it has no place in the OnMouseWheel events? So there is a workaround.

By the way, the proper test is *if* ssMiddle *in* Shift *then* . . . since Shift is a set of values, not an enumerated value, meaning it can contain more than one value. Press a mouse key and <shift> or <alt> to see what I mean. What is your view? Is this a bug that ought to be fixed, or is it not? My vote is: "If Shift in OnMouseWheelxxx events is supposed to return an empty set, remove the parameter from the handling procedures. If you say "keep it" then ensure the parameter does carry a value.

It is a bug. Delphi carries correct values in the Shift paramter in OnMouseWheelXXX events.

Ondrej
-- 
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus-ide.org/listinfo/lazarus

Reply via email to