there is not much a panel can do with a key. it can't display it unless you are changing it's caption. therefore the keypress are pass on to it's parent. Tabs and enter key operations that move from component to component and global key operation are handled at the form/frame level where you can modify or add stuff and/or menus hooks.
what is your goal?
This post gives the general idea
https://forum.lazarus.freepascal.org/index.php/topic,68642.0.htmlI want to design a fully keystroke driven window navigation and control environment, with an intent to make it all tiled eventually, and I need container components like panels which are designed to respond to certain key combinations automatically.
The container panels are supposed to follow standardized resizing (width and height), repositioning, hiding and restoring keystrokes. To implement the key stroke event handling at development time in code will be too onerous. It should all be built-in with properties to disable or enable some of these events when required.
I find using the mouse when it comes to navigating and resizing containers in programs rather awkward and inefficient and unpredictable.
Speaking as an Emacs and EXWM user who has seen the light.
Another thing I'd like to do for instance would be to use the keyboard to hide, widen and move around the columns of a grid. Being able to do that with a keyboard would be a boon.