I played around a little after reading your question and came up with a partial solution:
Create a global variable called keyPressed
Then create an event for Keyboard any key pressed
what I do then is the following in my event sheet:
Keyboard On any key pressed System Set keyPressed to Keyboard.LastKeyCode
Then I have another action in the event that sets the text of a text object called keyPressedText to the keyboard lastkeycode like this:
keyPressText Set text to keyPressed
This does what I want, the only issue is that the value of Keyboard.LastKeyCode is a number that represents which key was pressed, if anyone has a way to actually get the name of the key. I guess you could always create an array of the keys and their values and pull from it based on the LastKeyCode... hope this helps a little....