|
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
| Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] "Отловить" нажатие дополнительных (нестандартных) кнопок мыши |
|
||||
|
|
[решено] "Отловить" нажатие дополнительных (нестандартных) кнопок мыши
|
|
Старожил Сообщения: 379 |
Здравствуйте. Хотел бы с Вами посоветоваться, как можно организовать "отлов" нестандартных кнопок мыши используя только средства Autoit. Мышь A4Tech X-710FS.
иРаньше просто устанавливал HotKeySet на какую-нибудь клавишу(например F11), а потом в ПО (программном обеспечении) от девайса ставил cтимуляцию нажатия F11, при нажатии на эту нестандартную кнопку мыши. Но это все муторно и нужен скрипт без использования дополнительного ПО. Кстати, в игре CounterStrike в настройках управления можно установить какое-нибудь действие при нажатии на эту нестандартную кнопку. Отображается название нажатой кнопки как MOUSE3 ![]() |
|
|
------- Отправлено: 07:08, 27-03-2010 |
|
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать sashadeg, пробовал это: MouseSetOnEvent - Обработка событии мышки?
|
|
------- Отправлено: 12:45, 27-03-2010 | #2 |
|
Старожил Сообщения: 379
|
Профиль | Отправить PM | Цитировать Как я понял, это для стимулирования нажатия нестандартных (как там сказано БОКОВЫХ) кнопок мыши...
Или я что-то не понял? Можно простой пример вот такого алгоритма: Если нажать боковую кнопку мыши, то выскочит msgbox. |
|
------- Отправлено: 14:35, 27-03-2010 | #3 |
|
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Цитата sashadeg:
Цитата sashadeg:
If $__MouseSetOnEvent_aEvents[$i][0] = $iEvent Or _ $__MouseSetOnEvent_aEvents[$i][0] = $iEvent+8 Or $__MouseSetOnEvent_aEvents[$i][0] = $iEvent+16 Then If $__MouseSetOnEvent_aEvents[$i][0] = $iEvent Or _ ($iEvent = $MOUSE_WHEELSCROLL_EVENT And ($__MouseSetOnEvent_aEvents[$i][0] = $iEvent+8 Or $__MouseSetOnEvent_aEvents[$i][0] = $iEvent+16)) Then #include <MouseSetOnEvent_UDF.au3> Global $iXButton_Pressed = 0 HotKeySet("^q", "_Quit") _MouseSetOnEvent($MOUSE_XBUTTONUP_EVENT, "_MouseXButtonUp_Event") While 1 Sleep(10) If $iXButton_Pressed Then _MouseSetOnEvent($MOUSE_XBUTTONUP_EVENT) MsgBox(64, 'Title', 'X Button Pressed') Exit EndIf WEnd Func _MouseXButtonUp_Event() $iXButton_Pressed = 1 EndFunc Func _Quit() Exit EndFunc Проверить негде, т.к у меня обычная мышь. |
||
|
------- Отправлено: 21:19, 27-03-2010 | #4 |
|
Старожил Сообщения: 379
|
Профиль | Отправить PM | Цитировать Цитата Creat0R:
Что делает это исправление?Цитата Creat0R:
Будто он неактивный какой-то становился. Когда изменил $MOUSE_XBUTTONUP_EVENT на $MOUSE_XBUTTONDOWN_EVENT проблема с msgbox'om отпала. ____________________________________________________________________________________________________ _________ Решил попробовать сделать НЕ одноразовый скрипт (вместо $MOUSE_XBUTTONDOWN_EVENT вписал $MOUSE_WHEELDOWN_EVENT (нажатие на ролик)) и у меня начала вылетать ошибка, после нескольких нажатий (10-20 раз) ![]() #include <MouseSetOnEvent_UDF.au3>
Global $iXButton_Pressed = 0
_MouseSetOnEvent($MOUSE_WHEELDOWN_EVENT, "_MouseXButtonUp_Event")
HotKeySet("^q", "_Quit")
While 1
$iXButton_Pressed = 0
_MouseSetOnEvent($MOUSE_WHEELDOWN_EVENT, "_MouseXButtonUp_Event")
Sleep(10)
If $iXButton_Pressed Then
_MouseSetOnEvent($MOUSE_WHEELDOWN_EVENT)
MsgBox(64, 'Title', 'X Button Pressed')
EndIf
WEnd
Func _MouseXButtonUp_Event()
$iXButton_Pressed = 1
EndFunc
Func _Quit()
Exit
EndFunc
|
|||
|
------- Отправлено: 08:33, 28-03-2010 | #5 |
|
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать |
|
------- Отправлено: 08:40, 28-03-2010 | #6 |
|
Старожил Сообщения: 379
|
Профиль | Отправить PM | Цитировать Цитата Creat0R:
Цитата Creat0R:
Цитата Creat0R:
$iXButton_Pressed = 0 и убрал EXIT после msgboxa - не помогло а когда вписал в цикл ещё и _MouseSetOnEvent($MOUSE_WHEELDOWN_EVENT, "_MouseXButtonUp_Event") то все заработало ![]() Вот только ненадолго ![]() |
|||
|
------- Отправлено: 09:29, 28-03-2010 | #7 |
|
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать |
|
------- Отправлено: 17:44, 28-03-2010 | #8 |
|
Старожил Сообщения: 379
|
Профиль | Отправить PM | Цитировать |
|
------- Отправлено: 18:51, 28-03-2010 | #9 |
|
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать |
|
------- Отправлено: 22:41, 28-03-2010 | #10 |
|
|
|
Участник сейчас на форуме |
|
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
| Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
| Как произвести нажатие кнопок мыши без функций AutoIT и сторонних программ. | CyberStyLe | AutoIt | 11 | 08-02-2010 14:22 | |
| [решено] Отловить нажатие по плюсику | morgan1991 | AutoIt | 6 | 30-06-2009 10:54 | |
| [решено] Ограничение использования "горячих кнопок" по времени... Очень интересный вопрос... | sashadeg | AutoIt | 3 | 24-03-2009 10:38 | |
| Прочие - Переназначение дополнительных кнопок мышки (Mouse4="Enter", Mouse5="Delete", etc) | DreadMaster | Программное обеспечение Windows | 2 | 01-01-2009 17:54 | |
| [решено] Инверсия цветов и эффект "нажатых" кнопок в Win 2k3 Server SP1 | MoRoman | Microsoft Windows NT/2000/2003 | 5 | 11-04-2006 13:10 | |
|