C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  Update World C++: Сборник GPL QT исходников
  Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Дебетовая карта Home Credit [CPS] RU

 289 - CWnd::OnSysKeyDown / MFC Справка / Visual C++

Шаг 289 - CWnd::OnSysKeyDown

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

Параметры
nChar
Определяет код с нажимаемой виртуальной клавиши.
nRepCnt
Определяет повторный счет.
nFlags
Определяет скэн-код, код перехода клавиши, предыдущее состояние клавиши , и контекстный код, как показано в следующем списке:

  • 0-7 - Скэн-код (Значение зависит от первоначального изготовителя оборудования). Младший байт старшего слова.
  • 8 - Расширенная клавиша типа функциональной клавиши или клавиши на цифровой клавиатуре (1 если это расширенная клавиша, иначе 0).
  • 9-10 - Не используется.
  • 11-12 - Для внутреннего использования Windows.
  • 13 - Контекстный код (1 если клавиша ALT нажата в то время как клавиша нажата, иначе 0).
  • 14 - Предыдущее состояние клавиши (1 если клавиша нажата перед обращением, 0 если клавиша отпущена).
  • 15 - Состояние Перехода (1 если клавиша отпускается, 0 если клавиша нажимается).

Для обращений OnSysKeyDown бит перехода клавиши (бит 15) - 0. Бит контекстного кода (бит 13) 1 если клавиша ALT нажата в то время как клавиша нажата, 0 если сообщение послано активному окну потому что никакое окно не имеет фокус ввода.

Замечания
Если объект CWnd имеет фокус ввода OnSysKeyDown функция вызывается рамкой когда пользователь удерживает клавишу ALT и затем нажимает другую клавишу. Если никакое окно в настоящее время не имеет фокуса ввода OnSysKeyDown функция активного окна вызвана. Объект CWnd который получает сообщение может различать между этими двумя контекстами проверяя контекстный код в nFlags.
Когда контекстный код - 0, WM_SYSKEYDOWN сообщение полученное OnSysKeyDown может быть передано к функции TranslateAccelerator Windows, которая обработает это, как если бы это было нормальное сообщение клавиши вместо сообщения клавиши системы. Это позволяет акселераторам использоваться с активным окном, даже если активное окно не имеет фокуса ввода.
Из-за авто повторения, больше чем один OnSysKeyDown обращение могут происходить прежде чем WM_SYSKEYUP сообщение получено. Предыдущее состояние клавиши (бит 14) может использоваться чтобы определить, указывает ли обращение OnSysKeyDown первый переход или повторенный переход.
Для IBM расширенных 101 и 102 клавишных клавиатур, расширенные клавиши - правый ALT и CTRL на основном разделе клавиатуры. INS, DEL, HOME, END, PAGE UP, PAGE DOWN и клавиши курсора в кластерах налево от цифровой клавиатуры. Наклонная черта вправо (/) и ENTER в цифровой клавиатуре. Некоторые другие клавиатуры могут поддерживать бит расширяемой клавиши в nFlags.
Эта функция вызвана рамкой чтобы позволить Bашей прикладной программе обрабатывать сообщение Windows. Параметры переданные к Вашей функции отражают параметры полученные рамкой, когда сообщение было получено. Если Вы вызываете реализацию базового класса этой функции, та реализация использует параметры, первоначально переданные с сообщением, а не параметры которые Вы обеспечиваете функции.


| |
Автор Каев Артем.
[AD]





Дебетовая карта Home Credit [CPS] RU