How to direct the mouse wheel input to control under cursor instead of focused?

Scrolling origins An action with the mouse wheel results in a WM_MOUSEWHEEL message being sent: Sent to the focus window when the mouse wheel is rotated. The DefWindowProc function propagates the message to the window’s parent. There should be no internal forwarding of the message, since DefWindowProc propagates it up the parent chain until it … Read more

How to create a dialog like component that allows drop other controls inside it?

Take a closer look at TTabControl / TTabItem in the unit FMX.TabControl. This is your perfect example because it basically needs to solve the same problem. The following function is what you need to override: procedure DoAddObject(const AObject: TFmxObject); override; This is called when a control is added to your control. Override this function so … Read more

Published interface properties bug and workarounds

To summarize, the problem happens only with published interface properties that have a getter method, and the property points to component on another form/module (and that form/module is not recreated yet). In such case restoring form DFM causes an AV. I’m pretty sure the bug is in the ASM code in GetOrdProp, but it’s beyond … Read more