Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Pascal_работа с мышью

3.3K
29 марта 2007 года
Nethead
88 / / 24.11.2006
Как сделать в паскале что бы работала там мышь
242
30 марта 2007 года
Оlga
2.2K / / 04.02.2006
Ну, я думаю, что как минюмум надо обращаться с ней на Вы, а то она обидеться и убежит :).

советую более подробно описать вашу проблему, или кто-то понимает что человеку надо?
274
30 марта 2007 года
Lone Wolf
1.3K / / 26.11.2006
Я так понял, нужно как минимум, отобразить курсор мыши и описать некую процедуру, котоаря будет происходить при клике.
Вот пример нужных функций, но не на паскале, а на ассемблере, можеш использывать ассемблерные вставки. Создай процедуры, а вних вставь этот код.
1. Иницилизация мыши
Код:
xor ax,ax   ; непосредственно иницилизация драйвера мыши
    int 33h

    mov ax,0001h  ;отобразить курсор
    int 33h

    mov ax,000ch   ;установка обработчика на событие
    mov cx,00001010b  ; формат этого параметра будет привиден ниже
    push    cs
    pop es
    mov dx,offset FUNC  ;FUNС - это функция которая вызовется при событии закодировнаом в СХ
    int 33h
   }
}


Формат СХ
Бит 0 - любое перемещение
Бит 1 - нажатие левой кнопки
Бит 2 - отпускание левой кнопки
Бит 3 - нажатие правой кнопки
Бит 5 - отпускание правой кнопки
Бит 6 - нажатие средней кнопки
Бит 7 - отпускание средней кнопки
Проедура обработки должна быть оформлена как дальняя.
в этом примере процедура FUNC вызовится при нажатии левой или правой кнопки.

2. Отобразить курсор
 
Код:
mov ax,0001h
     int 33h


3. Спрятать курсор
 
Код:
mov ax,0002h
     int 33h


4. Деиницилизация мыши
 
Код:
mov     ax,000Ch
    mov     cx,0000h
    int     33h


5. Состояние мыши
 
Код:
mov ax,0003h
   int 33h

Результат выставится в регистр BX,СХ,DX.
BX - состояние кнопок
бит 0 - нажата левая кнопка
бит 1 - нажата правая кнопка
бит 2 - нажата средняя кнопка

СХ - Х-координата мыши
DX - У-координата (если используеш в текстовом режиме, то координаты нужно поделить на 8. В граффическом проверь, возможно Х- координату прийдется делтить на 2)
622
30 марта 2007 года
nilbog
507 / / 19.12.2006
есть описаные модули
вот например
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог