I'm currently working exclusively on Mac (while I await the ship to arrive in the UK with the rest of my stuff), and it works great here, both on 10.4 (PPC) and 10.5 (Intel). I am of course using David's slightly modified IDE which includes shortcuts for building/running apps using the custom appstub - you press cmd+shift-B/R. You can download the source from the maxmods site if you want to try it out.
Anyhoo... keyboard events should work by simply attaching the appropriate down/up connections to the control you wish to capture. Of course, your control will require focus.
My example above, assumed you wanted a Max2D-style of capture, but of course you can leave out the Max2D references and instead just use the OnKeyUp/Down functions if you wish.
If you have trouble connecting the event to a control (without first sub-classing it, as my above example shows), there is a second form of using ConnectAny which you may like to try. wxCodeGen uses this form extensively.
myControl.ConnectAny(wxEVT_KEY_DOWN, OnKeyDown, Null, Self)
Code like this would normally appear in the parent control's OnInit() method, with the OnKeyDown Function belonging to the parent, not the Child.
If you use this form you need to be aware that event.parent will refer to the control raising the event, not the parent to which the OnKeyDown function belongs. In this case you can use the "sink" field of the event to access the parent :
Function OnKeyDown(event:wxEvent)
TParentControl(event.sink).HandleSomeKeys(wxKeyEvent(event))
End Function
If you want to code like MaxGUI, where all your events go to the same event callback function, you can still do that if you wish (you just point all your Connects to the same function), but I personally think it is easier to have it separated into individual functions.
I hope this was clear, about how some of this works?
btw, your English is far better than my German! When I was in Frankfurt, I think the best I could manage was to ask for a curry-wurst :-p