The following code fragment shows how to decode a WM_CHAR message to determine whether it indicates a key-up event or a key-down event:

    USHORT fsKeyFlags;

    case WM_CHAR:  {
    USHORT fsKeyFlags = SHORT1FROMMP(mp1);

    if (fsKeyFlags & KC_KEYUP) {
         .
         . /* Perform key-up processing.   */
         .

    } else {
         .
         . /* Perform key-down processing. */
         .
    }

    return;

    }


[Back] [Next]