Per sapere se sono stati premuti tasti come ctrl o shift usa il metodo getKeyCode() di KeyEvent.
Restituisce un intero che rappresenta il VK_ (tasto virtuale) digitato, e lo confronti con VK_CONTROL e VK_SHIFT.

Se invece vuoi il codice ASCII usa il metodo getKeyChar()

Sono andato a memoria, per cui ti conviene controllare sulla documentazione ufficiale quello che ho detto.