Модель ввода клавиатуры

Система обеспечивает поддержку клавиатуры аппаратно независимые для приложений путем установки драйвера устройства клавиатуры для текущей клавиатуры. Система обеспечивает поддержку клавиатуры языка программирования, используя раскладка клавиатуры языка, выбранного пользователем или приложением. Драйвер устройства клавиатуры получает сканирования коды от клавиатуры, которые отправляются на раскладку клавиатуры, где они переведены на сообщения и в соответствующие окна в приложении.

Назначен для каждой клавиши на клавиатуре представляет собой уникальное значение, называется проверки кода, аппаратно зависимый идентификатор для клавиши на клавиатуре. Клавиатура генерирует два сканирования кода при вводе ключа, когда пользователь нажимает ключ и другой, когда пользователь отпускает клавишу.

Драйвер устройства клавиатуры интерпретирует код сканирования и переводит (карт) это Виртуальный ключ кодекс, аппаратно независимые значения, определяемого системой, определяющее цель ключа. После перевода код сканирования, раскладка клавиатуры создает сообщение, которое включает в себя код сканирования, виртуального ключа кода и другие сведения о нажатие клавиши и затем помещает сообщение в очередь системных сообщений. Система удаляет сообщение из очереди сообщений системы и трансформирует его в очередь сообщений потока. В конце концов цикл обработки сообщений потока удаляет сообщение и передает его в процедуре соответствующие окна для обработки. На следующем рисунке показана модель ввода клавиатуры.

Index