I am a little confused as to what you want at this time...
In my earlier Code Examples, even when selecting another ChildWindow than the first one,
the Input Focus stayed on the
first created ChildWindow.
=> So when hitting the Keyboard, the Chars still appeared in the TEdit of the
first created ChildWindow.
Now, in my last code example '04', I (mis)used LM_NCHitTest to change the Input Focus (=> TMemo) to the actually selected ChildWindow.
But
now, still the Focus only changes if I cross the borders/frame of another ChildWindow.
=> I want the Input Focus to move to the ChildWindow where the mouse is over.
( Does this violate any Microsoft UserInterface GuideLines ? .. )
The misbehaviore appears when two ChildWindows do overlap
(and so I do not touch any border of a underlying ChildWindow when moving the mouse cursor)
.. in my Code Example.
..
difficult to describe in words, I should be able to upload a video of that misbehaviore
(or You compile my last Example and play around with it, moving and touching the ChildWindows with Your Mouse Pointer ..)
Probably Your
Application.AddOnUserInputHandler(@UserInput, true);
is the way out for me. I'll try that tomorrow ..