Difference between revisions of "SysFn17/ru"
Jump to navigation
Jump to search
m ("идентификатор" вместо "код кнопки") |
Punk Joker (talk | contribs) |
||
Line 2: | Line 2: | ||
---- | ---- | ||
− | Забирает из буфера | + | Забирает код нажатой кнопки из буфера. |
− | + | Параметры: | |
− | + | :* eax = 17 - номер функции | |
− | * eax = 17 - номер функции | + | Возвращаемое значение: |
− | + | :* если буфер пуст, возвращается eax=1 | |
− | + | :* если буфер непуст: | |
− | * если буфер пуст, возвращается eax=1 | + | ::* старшие 24 бита eax содержат идентификатор кнопки |
− | * если буфер | + | :::(в частности, в ah оказывается младший байт идентификатора; |
− | + | :::если все кнопки имеют идентификатор, меньший 256, | |
− | + | :::то для различения достаточно ah) | |
− | + | ::* al = 0 - кнопка была нажата левой кнопкой мыши | |
− | + | ::* al = бит, соответствующий нажавшей кнопке мыши, если не левой | |
− | * | + | Замечания: |
− | + | :* "Буфер" хранит только одну кнопку, при нажатии новой кнопки | |
− | + | ::информация о старой теряется. | |
− | + | :* При вызове этой функции приложением с неактивным окном | |
− | * "Буфер" хранит только одну кнопку | + | ::возвращается ответ "буфер пуст". |
− | * При вызове этой функции приложением с неактивным окном возвращается ответ "буфер пуст". | + | :* Возвращаемое значение al соответствует состоянию кнопок мыши |
+ | ::в формате подфункции 2 функции 37 в момент начала нажатия | ||
+ | ::на кнопку, за исключением младшего бита (соответствующего левой | ||
+ | ::кнопке мыши), который сбрасывается. | ||
{{System_functions}} | {{System_functions}} | ||
[[Category: SysCalls]] | [[Category: SysCalls]] |
Revision as of 23:23, 15 December 2013
Функция 17 - получить идентификатор нажатой кнопки.
Забирает код нажатой кнопки из буфера. Параметры:
- eax = 17 - номер функции
Возвращаемое значение:
- если буфер пуст, возвращается eax=1
- если буфер непуст:
- старшие 24 бита eax содержат идентификатор кнопки
- (в частности, в ah оказывается младший байт идентификатора;
- если все кнопки имеют идентификатор, меньший 256,
- то для различения достаточно ah)
- al = 0 - кнопка была нажата левой кнопкой мыши
- al = бит, соответствующий нажавшей кнопке мыши, если не левой
Замечания:
- "Буфер" хранит только одну кнопку, при нажатии новой кнопки
- информация о старой теряется.
- При вызове этой функции приложением с неактивным окном
- возвращается ответ "буфер пуст".
- Возвращаемое значение al соответствует состоянию кнопок мыши
- в формате подфункции 2 функции 37 в момент начала нажатия
- на кнопку, за исключением младшего бита (соответствующего левой
- кнопке мыши), который сбрасывается.
|