A keyboard is programmatically adapted to enable an application in a run
time environment to distinguish operator keys (ALT/CTRL), not otherwise
recognizable on a standard keyboard and special keys not otherwise
recognizable on a non-standard keyboard by the application, when actuated.
In one embodiment, a native Dynamic Link Library (DLL) is created in
memory to capture the keystroke stream and maintain state information
about the keyboard. A Java Native Interface (JNI) is created in the DLL
and provided to a Java application. At initialization time, the Java
application loads the native DLL with extended program instructions
relating to key recognition in its static constructor. The Java
application receives notification when an ALT or CTRL key is actuated. At
that time the Java application calls the native DLL to receive the
extended program instruction to determine whether the right or left ALT or
CTRL key was actuated. The DLL programmatically determines whether the
right or left ALT or CTRL key was struck. The DLL provides the Java
application a flag that allows the application to determine if a "right"
or a "left" (ALT/CTRL) key was actuated. On a non-standard keyboard, the
Java application calls the native DLL to receive the necessary information
on the key that was actuated. Again, the DLL programmatically provides a
flag and extended keystroke data that allows the Java application to
determine if a special key was actuated.
Una tastiera programmatically è adattata per permettere ad un'applicazione in un ambiente runtime di distinguere le chiavi dell'operatore (ALT/CTRL), non al contrario riconoscibili su una tastiera standard e sulle chiavi speciali non al contrario riconoscibili su una tastiera non standard dall'applicazione, una volta attuata. In un incorporamento, una biblioteca di collegamento dinamica natale (DLL) è generata nella memoria per bloccare il flusso di battitura e per effettuare dichiara le informazioni sulla tastiera. Un'interfaccia natale del Java (JNI) è generata nel DLL e se ad un'applicazione del Java. A tempo di inizio, l'applicazione del Java carica il DLL natale con le istruzioni di programma estese concernente riconoscimento chiave nel relativo costruttore statico. L'applicazione del Java riceve la notifica quando una chiave di CTRL o dell'alt è attuata. A quel tempo l'applicazione del Java denomina il DLL natale per ricevere l'istruzione di programma estesa per determinare se la giusta o chiave di sinistra di CTRL o dell'alt sia stata attuata. Il DLL programmatically determina se la giusta o chiave di sinistra di CTRL o dell'alt sia stata colpita. Il DLL fornisce l'applicazione del Java una bandierina che permette che l'applicazione determini se "una giusta" o chiave "lasciata" (ALT/CTRL) fosse attuata. Su una tastiera non standard, l'applicazione del Java denomina il DLL natale per ricevere le informazioni necessarie sulla chiave che è stata attuata. Di nuovo, il DLL programmatically fornisce una bandierina ed i dati estesi di battitura che permettono che l'applicazione del Java determini se una chiave speciale fosse attuata.