Sto premendo il tasto AltGr nella mia applicazione Java, ma invece di ricevere un KeyEvent con il codice chiave VK_ALT_GRAPH ottengo due eventi. Il primo con il codice chiave VK_CONTROL e il secondo con VK_ALT.Java non produce l'evento chiave AltGr corretto
È questo il comportamento corretto?
Utilizzo di Java 7 su Windows 7. possono essere riprodotti con l'applicazione demo trovato su http://docs.oracle.com/javase/tutorial/uiswing/events/keylistener.html
Quando premo AltGr riporta:
KEY PRESSED: key code = 17 (Ctrl) extended modifiers = 128 (Ctrl) action key? NO key location: left KEY PRESSED: key code = 18 (Alt) extended modifiers = 640 (Ctrl+Alt) action key? NO key location: right KEY RELEASED: key code = 17 (Ctrl) extended modifiers = 512 (Alt) action key? NO key location: left KEY RELEASED: key code = 18 (Alt) extended modifiers = 0 (no extended modifiers) action key? NO key location: right
Su Linux (Ubuntu) attiva solo un evento ma con il codice chiave 0 e non VK_ALT_GRAPH (suppongo che sia possibile controllare lo stato con isAltGraphDown) .Questo comportamento sembra essere altamente specifico della piattaforma.È un errore? –
Questo sembra essere un problema generale di win32 con alcuni layout di tastiera (per esempio tedesco-svizzero). Desidero spostare tale domanda su input win32, non sono sicuro che possa aiutare a trovare soluzioni .. – elmarco