CenterButton =4; {Средняя кнопка} AnyButton =7; {Любая кнопка}
Пересчет виртуальных координат в текстовые и обратно осуществляется С помощью двух масштабных коэффициентов:
const
TextRatioX: Byte = 8; {Для колонок} TextRatioY: Byte = 8; (Для строк}
Вы должны изменить эти коэффициенты, если используете в графическом режиме шрифт, размеры которого не соответствуют 8 пикселам по горизонтали и вертикали: в TextRatioX следует поместить ширину символов в пикселах, а в TextRatioY — высоту.
4.2.2. Инициация мыши
Функция IsMouse. Возвращает True, если программе доступна мышь. Заголовок:
Function IsMouse: Boolean;
Для проверки доступности мыши функция контролирует вектор прерывания $33 — он не должен быть нулевым. Затем она обращается к функции 3 драйвера (дать статус мыши) и контролирует изменение регистра ВХ. Замечу, что эти проверки осуществляются только в том случае, когда внутренняя переменная NButton, содержащая количество кнопок мыши, равна нулю. Если мышь оснащена двумя или тремя кнопками, в эту переменную помещается нужное число после первого же обращения к функции InitM.ov.se.
Функция InitMouse. Осуществляет сброс драйвера мыши. Заголовок:
Function InitMouse: Boolean;
После вызова этой функции указатель гасится и устанавливается в центр экрана, он приобретает стандартную форму, границы перемещения указателя расширяются на весь экран, для его отображения в текстовом режиме выбирается видеостраница 0 (основная). Если к этому моменту были определены элементы выбора, они сбрасываются.
Функция возвращает True после успешного вызова и False, если отсутствует драйвер мыши или к мыши нет физического доступа. Вызов функции должен предшествовать началу работы с мышью.
Процедура SetMousePaqe. Устанавливает видеостраницу, в которой будет отображаться указатель мыши. Заголовок:
Procedure SetMousePage(Page: Byte).
Здесь Page — номер устанавливаемой страницы (нумерация страниц начинается с нуля).