Поделиться через


CWnd::OnSysKeyDown

Если объект CWnd имеет фокуса ввода, то OnSysKeyDown функция-член вызывается инфраструктурой при удерживании пользователем ключ ALT и нажмите клавишу другой ключ.

afx_msg void OnSysKeyDown( 
   UINT nChar, 
   UINT nRepCnt, 
   UINT nFlags  
);

Параметры

  • nChar
    Указывает виртуальный код клавиши, отжиманным ключа. Список стандартных виртуальных кодов клавиш см. в разделе Winuser.h

  • nRepCnt
    Указывает число повторений.

  • nFlags
    Указывает код просмотра, код ключ- go, предыдущее состояние ключа, а код контекста, как показано в следующем списке:

    Значение

    Значение

    0–7

    Код просмотра (значение OEM- зависимых). Младший байт слова высок- заказа.

    8

    Расширенный ключ, например функциональной клавиши или ключ на цифровой клавиатуре (1, если расширенный ключ; в противном случае – 0 (минус единица).

    9–10

    Не используется.

    11–12

    Используемый внутри системы Windows.

    13

    Код контекста (1, если ключ ALT удерживать, пока нажата ключ, в противном случае 0).

    14

    Состояние ключа обратно (1, если ключ вниз до того, как сообщение отправлено, 0, если ключ вверх).

    15

    Состояние перехода (1, если ключ освобождение, и 0, если отжимается ключ).

    Для вызова OnSysKeyDown, бит ключ- go (сдержанный 15) 0. Bit контекст- кода (сдержанный 13) 1, если ключ ALT вниз, пока ключ нажат. он 0, если сообщение отправлено в активное окно, из-за отсутствия окно не имеет фокус ввода.

Заметки

Если в окне в настоящий момент не имеет фокуса ввода, то вызов функции-члена OnSysKeyDown активного окна. Объект CWnd, который получает сообщение может различить между этими контекстами 2, проверив код контекста в nFlags.

Если код контекста 0, WM_SYSKEYDOWN полученное сообщение OnSysKeyDown можно передать функции TranslateAccelerator Windows, которая будет обрабатывать, как если бы он был обычным сообщением, а не ключевым система- ключа. Это позволяет сочетание клавиш для использования с активным окном даже если активное окно не имеет фокус ввода.

Из-за автоповтора, более чем один вызов OnSysKeyDown может произойти до того, как сообщение WM_SYSKEYUP получено. Предыдущее состояние (ключевое сдержанное 14) можно использовать для определения указывающее, является ли первый вызов OnSysKeyDown переход вниз или повторенные вниз go.

Для IBM увеличенного 101 и 102 ключевых клавиатуры, ключи улучшенные правый ALT и CTRL правое ключи в основном разделе клавиатуры. INS, DEL, home, ЭЛЕМЕНТ СТРАНИЦА ВВЕРХ, ВНИЗ СТРАНИЦЫ и клавиши со стрелками в кластерах налево цифровой клавиатуры. и косая черта (/) и клавиша ВВОД на цифровой клавиатуре. Некоторые другие клавиш могут поддерживать продленн- ключ сдержанный в nFlags.

Примечание

Это функция-член вызывается платформой, чтобы разрешить приложению обработать сообщение Windows.Параметры, передаваемые функции отражают параметры, получаемые платформой, когда сообщение было получено.При вызове реализации базового класса этой функции, то эта реализация будет использовать параметры изначально, переданные с сообщением, а не параметры указываются в функции.

Требования

Header: afxwin.h

См. также

Ссылки

Класс CWnd

Диаграмма иерархии

TranslateAccelerator

CWnd::OnSysKeyUp

WM_SYSKEYDOWN