Графические устройства

         

Анализ состояния кнопок



Анализ состояния кнопок

Текущее состояние мыши, как правило, надо анализировать в тех случаях, когда это необходимо для выполнения задачи. Поэтому мы рекомендуем, по крайней мере, на первое время использовать опрос состояния. При этом вместо обращений к драйверу мыши надо проверять значения переменных LBevent и RBevent, которые формирует вызываемая драйвером подпрограмма, при наступлении соответствующих событий. Вместо 8 разных значений, перечисленных в табл. 6.2, в режиме прерываний LBevent и RBevent могут иметь только три значения 0, 1 и 2.

Переменная Mstatus имела вспомогательное значение и в данном случае она не используется. Вместо нее мы введем три новые переменные:

Noevent db 0 ; признак изменения (1) состояния кнопок
Xasevent dw 0 ; координата X в момент изменения состояния кнопок
Yasevent dw 0 ; координата Y в момент изменения состояния кнопок

При изменении состояния кнопок подпрограмма устанавливает младший разряд переменной Noevent, очищать эту переменную должна задача после обработки события. Переменные Xasevent и Yasevent введены на тот случай, когда надо знать, в каком месте находился курсор в момент нажатия или отпускания кнопок мыши.



Содержание раздела