Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
METODIchka4.DOC
Скачиваний:
5
Добавлен:
04.05.2019
Размер:
940.03 Кб
Скачать

Функция 07h

Задать горизонтальный диапазон

*Вход: АХ = 07h

СХ = минимальная горизонтальная позиция курсора

DX = максимальная горизонтальная пози­ция курсора

*Выход:

*Примечание.

AX имеет следующий формат:

7 6 5 4 3 2 1 0

Задает диапазон допустимых координат курсора по горизонтали. Эти координаты должны находиться в пределах экрана и округляются до ближайшей допустимой позиции курсора. Если курсор будет выдвинут за границы заданного диапазона, то драй­вер установит его на границу допустимой области. Если минимальное значение больше максимального, то они меняются местами.

Функция 08h

Задать вертикальный диапазон

*Вход: АХ = 08h

СХ = минимальная вертикальная позиция курсора

DX = максимальная вертикальная позиция курсора

*Выход:

*Примечание.

Задает диапазон допустимых координат курсора по вертикали. Эти координаты должны находиться в пределах экрана и округляются до ближайшей допустимой позиции курсора. Если курсор будет выдвинут за границы заданного диапазона, то драй­вер установит его на границу допустимой области. Если минимальное значение больше максимально­го, то они меняются местами.

Функция 09h

Определить графический курсор

*Вход: АХ= 09h

DX = горизонтальная позиция точки (-16..+16)

CХ = вертикальная позиция точки (-16...+16)

DS:DX = указатель на маску экрана и маску курсора

*Выход:

*Примечание.

Задает новую форму графического курсора. DS:DX должны содержать адрес массива из 32 слов, содер­жащего маску экрана и (следом за ней) маску кур­сора. ВХ и СХ определяют положение горячей точки относительно блока курсора (внутри или вне его).

Функция 0Ah

Определить текстовый курсор

*Вход: АХ = 0Ah

ВХ = тип курсора:

0 - программный, 1 - аппаратный

СХ = маска экрана или начальная линия курсора

DX = маска курсора или конечная линия курсора

*Выход:

*Примечание.

Задает тип и форму текстового курсора. Если ВХ=1, то задается аппаратный курсор и его форма определяется содержимым СХ и DX . Если ВХ=0, то задается программный курсор и его маски экрана и курсора задаются в СХ и DX соответственно.

Функция 0Bh

Получить перемещение мыши

*Вход: АХ = 0Bh

*Выход: СХ = перемещение по горизонтали

DX == перемещение по вертикали

*Примечание.

Возвращает перемещение мыши с последнего вызова этой функции. СХ положительно при переме­щении вправо и отрицательно при перемещении вле­во. DX положительно при перемещении вниз и отри­цательно при перемещении вверх. Оба числа находят­ся в диапазоне от-32768 до 32767; переполнение не фиксируется. После вызова функции счетчики пере­мещения сбрасываются в нуль. Замечание. Одно движение мыши составляет 1/200 дюйма, т.е. примерно 0,126 мм.

Функция 0Сh

Задать программу обработки событий

*Вход: АХ = 0Ch

СХ = пользовательская маска событий

ES:DX = адрес программы обработки событий

*Выход: нет

*Примечание:

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

1 5 – 7 6 5 4 3 2 1 0

рис. 1.

Подпрограмма обработки событий должна соблю­дать два следующих соглашения о связях :

— на входе подпрограммы определены следующие регистры:

АХ = причина вызова подпрограммы в формате маски событий;

ВХ == состояние кнопок (см. Функцию 3);

СХ = горизонтальная позиция курсора;

DX == вертикальная позиция курсора;

SI = горизонтальное перемещение мыши ;

DI = вертикальное перемещение мыши;

— подпрограмма вызывается командой CALL FAR PTR и поэтому должна оканчиваться командой длинного возврата RETF.

*Примечание.

Не забудьте перед завершением своей программы вызвать эту функцию с СХ=0, чтобы запретить пользовательскую обработку событий.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]