Ich melde mich mal mit einer Kleinigkeit zurück.
Der Kunde wünscht sich bei der Auswahl von Nodes auch die Modifier der Tastatur zu ermitteln. Üblicherweise ist das gar nicht möglich, wenn man nur mit Lookup-Listener auf Results arbeitet (was ja die Regel sein sollte).
Da Swing ja singlethreaded ist und die meisten Lookup-Benachrichtigungen sich auch daran halten (außer man erzwingt Mutlithreading – was böse ist), kann man einfach über das AWT das aktuelle Event ermitteln:
AWTEvent currentEvent = EventQueue.getCurrentEvent();
Da AWTEvent recht schmalbrüstig ist, müssen wir es noch casten. Beispiel:
if ( currentEvent instanceof InputEvent ) {
mods = ((InputEvent)currentEvent).getModifiers();
}
Ist kein aktuelles Event vorhanden, wird null zurückgegeben, was mit instanceof ohne NPE abgefangen wird. Dann erhalten wir aber auch keine Modifier.
The NetBeans Dream Team strives to make the NetBeans open source project more accessible to our user, contributor, and partner communities.
