Что нового

[Мышь, клавиатура] Блокировка движения мыши

_Lexa98_

Осваивающий
Сообщения
551
Репутация
25
Как заблокировать движение мыши при нажатии(удерживании) на среднюю кнопку мыши, и при отжатии разблокировать? (MouseMove не предлагать :-X)
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
Попробуй так:
Код:
#include <Misc.au3>
#include <BlockInputEx.au3>

While 1
	If _IsPressed(4) Then
		_BlockInputEx(3) ;Блокируем клавиатуру
		_BlockInputEx(2, "{MWUP}|{MWDOWN}")  ;Блокируем мышь, кроме средней кнопки
	Else
		_BlockInputEx(0) ;Разблокируем все
	EndIf
WEnd


BlockInputEx.au3 можешь скачать тут:
http://autoit-script.ru/index.php/topic,162.0.html
 
Автор
_Lexa98_

_Lexa98_

Осваивающий
Сообщения
551
Репутация
25
Zaramot
Зажимаю среднюю кнопку, курсор немного подтормаживает(но не останавливается), и в консоли выходит это:
Код:
>Exit code: -1073741819    Time: 19.441
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
А так ?
Код:
#include <Misc.au3>
#include <BlockInputEx.au3>

While 1
    If _IsPressed(4) Then
        _BlockInputEx(3) ;Блокируем клавиатуру
        _BlockInputEx(2, "{MWUP}|{MWDOWN}")  ;Блокируем мышь, кроме средней кнопки
		Do
			Sleep(10)
		Until _IsPressed(4) = 0
        _BlockInputEx(0) ;Разблокируем все
    EndIf
WEnd


Извини, проверить не могу, так как мышка сломана :-X
 
Автор
_Lexa98_

_Lexa98_

Осваивающий
Сообщения
551
Репутация
25
Zaramot
Вот это работает, спасибо! Вопрос: а зачем блокировать клавиатуру?(Проверил, она все равно не блокируется)


Добавлено:
Сообщение автоматически объединено:

А как это переделать не на среднюю кнопку, а на левую?
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
Автор
_Lexa98_

_Lexa98_

Осваивающий
Сообщения
551
Репутация
25
Zaramot [?]
Хммм... у меня блокирует
think.gif
Зажал, попробовал набрать текст в scite - набирается :smile:


Добавлено:
Сообщение автоматически объединено:

_Lexa98_ [?]
А как это переделать не на среднюю кнопку, а на левую?
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
А как это переделать не на среднюю кнопку, а на левую?
Код:
#include <Misc.au3>
#include <BlockInputEx.au3>

While 1
    If _IsPressed(1) Then
        _BlockInputEx(3) ;Блокируем клавиатуру
        _BlockInputEx(2, "{MPUP}|{MPDOWN}")  ;Блокируем мышь, кроме левой кнопки
        Do
            Sleep(10)
        Until _IsPressed(1) = 0
        _BlockInputEx(0) ;Разблокируем все
    EndIf
WEnd
 
Верх