Edit:
The behaviour is sadly built-in to windows, seems the ms-developers standpoint is: Windows is the OS and the OS makes the rules how keys work so they occupied these keys (Tab, Arrows, Alt, F10 etc.) and all windows-users have to live with that decision now. However you may visit their compliant departement
Don't know if helps - I append some complete list of UI-equates here, sorted by alphabet - can not be wrong to have it in stock and is much easier to read than ms-documentation, especially when searching for a certain message where you only have a small clue as "Focus" etc. (CTRL+F & F3 are your friends)
The %WM_...Focus-messages seem only to apply to the window itself but in general any control is a window too - but I'd try the simple %BN_-messages as first - even if it's a canvas
I guess there's some callback-event-msg for "Control Lost Focus" (KillFocus?) and you could recheck in this moment if still arrow-keys held (GetAsyncKeyState) and set focus back to picturebox, image, canvas etc.
As I read on some MS-doc it's not recommended to set focus (f.e. back to the old control) within the Got-focus-event so one might do it already if the old control loses focus and before it's set to the new control.
Bookmarks