afx_msg void OnSysChar( UINT nChar, UINT nRepCnt, UINT nFlags );
Параметры
nChar
Определяет код ASCII клавиши из Control-menu.
nRepCnt
Определяет повторный счет (число раз, нажатие клавиши повторено в результате удерживания клавиши).
nFlags
nFlags параметр может иметь эти значения:
- 0-15 - Определяет повторный счет. Значение - число повторов в результате удерживания клавиши.
- 16-23 - Определяет скэн-код. Значение зависит от первоначального изготовителя оборудования (OEM).
- 24 - Определяет, является ли клавиша расширенной клавишей типа правых клавиш ALT и CTR, которые появляются на расширенной 101 или с 102 клавишной клавиатуре. Значение 1 если это - расширенная клавиша иначе 0.
- 25-28 - Внутреннее использования Windows.
- 29 - Определяет контекстный код. Значение 1, если клавиша ALT нажата в то время как клавиша нажата, иначе значение - 0.
- 30 - Определяет предыдущее состояние клавиши. Значение 1 если клавиша нажата прежде чем сообщение послано или 0 если клавиша вверху.
- 31 - Определяет состояние перехода. Значение 1, если клавиша отпускаеться или 0 если клавиша нажимается.
Замечания
Рамка вызывает эту функцию если CWnd имеет фокус ввода и WM_SYSKEYUP, и WM_SYSKEYDOWN сообщения транслируются. Она определяет код виртуальной клавишей для клавиш Control-menu.
Когда контекстный код - 0, WM_SYSCHAR может передавать WM_SYSCHAR сообщение к функции TranslateAccelerator Windows которая обработает его как если бы это было нормальное сообщение клавиши вместо клавиши знака системы. Это позволяет акселераторам использоваться с активным окном, даже если активное окно не имеет фокуса воода.
Для IBM расширенных 101 и 102 клавишных клавиатур, расширенные клавиши - правый ALT и CTRL на основном разделе клавиатуры. INS, DEL, HOME, END, PAGE UP, PAGE DOWN и клавиши курсора в кластерах налево от цифровой клавиатуры. Наклонная черта вправо (/) и ENTER в цифровой клавиатуре. Некоторые другие клавиатуры могут поддерживать бит расширяемой клавиши в nFlags.
Эта функция вызвана рамкой, чтобы позволить Bашей прикладной программе обрабатывать сообщение Windows. Параметры переданные к Вашей функции отражают параметры полученные рамкой, когда сообщение было получено. Если Вы вызываете реализацию базового класса этой функции, та реализация использует параметры, первоначально переданные с сообщением, а не параметры, которые Вы обеспечиваете функции.