LabWindows does check for a key release event by default. You can catch this event by using a tool provided in the Programmer's Toolbox (c:\measurementstudio\cvi\toolslib\toolbox\toolbox.fp).
The function is InstallWinMsgCallback(). The following is an example of how to use this function:
InstallWinMsgCallback (hpanel, 0x0101, keyup, VAL_MODE_IN_QUEUE, NULL, &postinghandle);
You will have to modify it so that hpanel is the name of your panel handle and define a function keyup() to handle the WM_KEYUP event. You also need to define a postinghandle. The function keyup() will be called every time that a key on the keyboard is released. It will have to
look at it's parameters and decide what to do. The following is some information on keyup()'s parameters:
wParam
Spe
cifies the virtual-key code of the nonsystem key.
lParam
Specifies the repeat count, scan code, extended-key flag, context code, previous key-state flag, and transition-state flag, as shown in the following table.
Value
Description
0�15
Specifies the repeat count for the current message. The value is the number of times the keystroke is autorepeated as a result of the user holding down the key. The repeat count is always one for a WM_KEYUP message.
16�23
Specifies the scan code. The value depends on the original equipment manufacturer (OEM).
24
Specifies whether the key is an extended key, such as the right-hand ALT and CTRL keys that appear on an enhanced 101- or 102-key keyboard. The value is 1 if it is an extended key; otherwise, it is 0.
25�28
Reserved; do not use.
29
Specifies the context code. The value is always 0 for a WM_KEYUP message.
30
Specifies the previous key state. The value is always 1 for a WM_KEYUP message.
31
Specifies the transition state. The value is always 1
for a WM_KEYUP message.
For more information please see you SDK help (Help->Windows SDK) or http://www.msdn.microsoft.com.
I hope this gets you started.