Difference between revisions of "SysFn40/ru"
Jump to navigation
Jump to search
m |
m |
||
(4 intermediate revisions by 4 users not shown) | |||
Line 3: | Line 3: | ||
---- | ---- | ||
− | Маска для ожидаемых событий влияет на функции работы с событиями 10, 11, 23 - они сообщают только о событиях, разрешённых этой маской. | + | Маска для ожидаемых событий влияет на функции работы с событиями 10, |
− | + | 11, 23 - они сообщают только о событиях, разрешённых этой маской. | |
− | + | <br>Параметры: | |
* eax = 40 - номер функции | * eax = 40 - номер функции | ||
− | * ebx = маска: бит i соответствует событию i+1 (см. список событий) | + | * ebx = маска: бит i соответствует событию i+1 ([[Ru/api/kernel#Список событий|см. список событий]]) |
− | + | :(установленный бит разрешает извещение о событии) | |
− | + | :bit 31: фильтр активности событий мыши | |
− | + | :bit 31 = 0 - неактивное окно всегда получает события от мыши | |
− | * | + | :bit 31 = 1 - неактивное окно не получает события от мыши |
− | + | :bit 30: фильтр позиции курсора | |
− | + | ::bit 30 = 0 - окно принимает события мыши, если курсор за пределами окна | |
− | * Маска по умолчанию (7=111b) разрешает извещения о перерисовке и нажатиях клавиш и кнопок. Этого достаточно для большинства приложений. | + | ::bit 30 = 1 - окно не принимает события мыши, если курсор за пределами окна |
− | * События, запрещённые в маске, всё равно сохраняются, если приходят; о них просто не извещают функции работы с событиями. | + | Возвращаемое значение: |
− | * Функции работы с событиями учитывают маску на момент вызова функции, а не на момент поступления сообщения. | + | :* eax = предыдущее значение маски |
+ | Замечания: | ||
+ | :* Маска по умолчанию (7=111b) разрешает извещения о перерисовке и нажатиях клавиш и кнопок. | ||
+ | ::Этого достаточно для большинства приложений. | ||
+ | :* События, запрещённые в маске, всё равно сохраняются, если приходят; о них просто не извещают функции работы с событиями. | ||
+ | :* Функции работы с событиями учитывают маску на момент вызова функции, а не на момент поступления сообщения. | ||
+ | '''Константы для регистров:''' | ||
+ | ::eax - SF_SET_EVENTS_MASK (40) | ||
{{System_functions}} | {{System_functions}} | ||
[[Category: SysCalls]] | [[Category: SysCalls]] |
Latest revision as of 18:14, 17 January 2016
Функция 40 - установить маску для ожидаемых событий.
Маска для ожидаемых событий влияет на функции работы с событиями 10,
11, 23 - они сообщают только о событиях, разрешённых этой маской.
Параметры:
- eax = 40 - номер функции
- ebx = маска: бит i соответствует событию i+1 (см. список событий)
- (установленный бит разрешает извещение о событии)
- bit 31: фильтр активности событий мыши
- bit 31 = 0 - неактивное окно всегда получает события от мыши
- bit 31 = 1 - неактивное окно не получает события от мыши
- bit 30: фильтр позиции курсора
- bit 30 = 0 - окно принимает события мыши, если курсор за пределами окна
- bit 30 = 1 - окно не принимает события мыши, если курсор за пределами окна
Возвращаемое значение:
- eax = предыдущее значение маски
Замечания:
- Маска по умолчанию (7=111b) разрешает извещения о перерисовке и нажатиях клавиш и кнопок.
- Этого достаточно для большинства приложений.
- События, запрещённые в маске, всё равно сохраняются, если приходят; о них просто не извещают функции работы с событиями.
- Функции работы с событиями учитывают маску на момент вызова функции, а не на момент поступления сообщения.
Константы для регистров:
- eax - SF_SET_EVENTS_MASK (40)
|