Что нового

Увеличение клика мыши

Lemm333

Новичок
Сообщения
7
Репутация
0
Версия AutoIt:
3.3.0.0
Описание:
Я новичек в этой теме. У меня просьба: помогите написать скрипт.
Кнопка "INSERT" - запускает скрипт
Кнопка "HOME" - пауза (скрипт не работает)
Кнопка "PGUP" - выключает скрипт
Сам скрипт - присвоение кнопки LMouse, 4-ного клика. Т.е. скрипт меняет количество кликов мыши. Одно нажатие на LMouse и происходит 4-ное кликание. Желательно без sleep или sleep (1).
После завершения работы скрипта, настройки мыши вернулись бы по дефолту.
Примечания:
Сам конечно пробовал, но не получилось((
MouseClick ( "button" [, x, y [, clicks [, speed ]]] ) – пробовал работать с этой строкой. Не получилось.

Спасибо заранее.
 
Автор
L

Lemm333

Новичок
Сообщения
7
Репутация
0
Я тут сделал простенький скрипт для вкл./паузы/выкл., моего будущего скрипта, протестил его, но пауза почему-то не работает. Подскажите, что не так? (3.exe - пробный скрипт)
Код:
HotKeySet("{PGUP}","_exit")
HotKeySet("{HOME}","_Pause")
HotKeySet("{INSERT}","_Run")
While 1
Sleep (100)
WEnd
Func _exit()
ProcessClose("3.exe")
EndFunc
Func _Pause()
ProcessWait("3.exe")
EndFunc
Func _Run()
ShellExecute("3.exe")
EndFunc
 

Nik_rus

Python The Snake.
Сообщения
214
Репутация
62
Ну это вопщето легко...
Код:
#include <MouseSetOnEvent_UDF.au3>
HotKeySet("!e","_Exit")
_MouseSetOnEvent($MOUSE_SECONDARYDOWN_EVENT, "_4LM")
While 1
	Sleep(0)
WEnd
Func _4LM()
	For $i=1 To 4 Step 1
		MouseClick("left")
	Next
EndFunc
Func _Exit()
	Exit
EndFunc

Я нашел среди UDF - MouseSetOnEvent, поэтому не забудь скачать её!
Работает на нажатие правой кнопки, на левой у меня какой-то глюк(нажимает не переставая) =(
Насчет запускатора:
Код:
HotKeySet("{PGUP}","_Exit")
HotKeySet("{HOME}","_Pause")
HotKeySet("{INSERT}","_Run")
$in = 0
While 1
	Sleep (100)
WEnd
Func _Exit()
	If $in=1 Then
		$in=0
		ProcessClose("3.exe")
	EndIf
EndFunc
Func _Pause()
	If $in=1 Then
		$in=0
		ProcessClose("3.exe")
	ElseIf $in=0 Then
		$in=1
		Run("3.exe")
	EndIf
EndFunc
Func _Run()
	if $in=0 Then
		$in=1
		Run("3.exe")
	EndIf
EndFunc
 
Автор
L

Lemm333

Новичок
Сообщения
7
Репутация
0
Nik_rus сказал(а):
Ну это вопщето легко...
Единственно что я не знаю - это как в HotKeySet обозначить левую кнопку мыши.. но по моему где-то в дебрях форума есть библиотека OnMouseClick... дерзай!
Так вот и я не смог найти "OnMouseClick". По крайней мере поиск не дал ничего... Проверил твой скрипт SciTE4AutoIt3 - выдал ошибку сразу
Код:
HotKeySet("{ENTER}",_4LM)
~~~~~~~~~~~~~~~~~~~~~~~~^

Попробовал запустить, тоже ошибка.
Код:
HotKeySet("{ENTER}",_4LM^ERROR

Что это за ошибки и как исправить, я незнаю.
 

SyDr

Сидра
Сообщения
651
Репутация
158
Lemm333 сказал(а):
Я тут сделал простенький скрипт для вкл./паузы/выкл., моего будущего скрипта, протестил его, но пауза почему-то не работает. Подскажите, что не так? (3.exe - пробный скрипт)
Что подразумевается под тем, что пауза не работает?
Насколько я знаю, HotKey обрабатываются в том числе и во время Sleep.
ProcessWait - ожидает появления указанного процесса.



Nik_rus [?]
Работает на нажатие правой кнопки, на левой у меня какой-то глюк(нажимает не переставая) =(
Перед тем как нажимать кнопку скриптом - отключи проверку на это самое нажатие)).


http://www.autoitscript.com/forum/index.php?showtopic=64738
 

Nik_rus

Python The Snake.
Сообщения
214
Репутация
62
точно, не подумал что цикл бесконечный получается :D
Но на правой работает, думаю автор заказа и так съест :blum:
 
Автор
L

Lemm333

Новичок
Сообщения
7
Репутация
0
Нет, не сьем) Во-первых:Правая мне не нужна, во-вторых:у меня на правой не работает почему-то...
Я так понял, нужно вставить комаду - $MOUSE_PRIMARYUP_EVENT ;Отжатие главной кнопки?
И как отключить это самое "отключи проверку на это самое нажатие"?
Или прописать как-то по другому строку:
_MouseSetOnEvent($EVENT [, "FuncName" [, $sParam1 [, $sParam2 [, $iBlockDefProc]]]]) ??
 

Nik_rus

Python The Snake.
Сообщения
214
Репутация
62
пля чем не нравится правой

мб передавать параметр? ну честно говоря я не знаю) дерзай, пусть твоя мысль дополнит этот код!
Да прибудет с тобой АвтоСила!
 
Автор
L

Lemm333

Новичок
Сообщения
7
Репутация
0
Так как "отключить проверку на это самое нажатие"?



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

Кстати, что-то происходит с самой мышью во время этого скрипта, дергается ужасно. Видимо скорость перемещения увеличивается или сенса...незнаю.
 

SyDr

Сидра
Сообщения
651
Репутация
158
Код:
#include <MouseSetOnEvent_UDF.au3>
AutoItSetOption("MouseClickDelay", 10)
AutoItSetOption("MouseClickDownDelay", 10)
HotKeySet("{HOME}","Pause")
HotKeySet("{PGUP}","_Exit")

Global $bPause = True

Pause()

While 1
    Sleep(100)
WEnd

Func _4LM()
	_MouseSetOnEvent($MOUSE_PRIMARYDOWN_EVENT)
    MouseClick("left", MouseGetPos(0), MouseGetPos(1), 4)
	_MouseSetOnEvent($MOUSE_PRIMARYDOWN_EVENT, "_4LM")
EndFunc

Func Pause()
	If Not $bPause Then _MouseSetOnEvent($MOUSE_PRIMARYDOWN_EVENT)
	$bPause = Not ($bPause)
    If Not $bPause Then _MouseSetOnEvent($MOUSE_PRIMARYDOWN_EVENT, "_4LM")
	While $bPause
		Sleep(100)
	WEnd
EndFunc

Func _Exit()
	Exit
EndFunc


Кнопки старт нет. Только пауза.
 
Автор
L

Lemm333

Новичок
Сообщения
7
Репутация
0
Спасибо, заработало!
НО (!), мышка дергается (перемещается) как ненормальная от этого скрипта....жуть просто. Аж в глазах ребит! Как можно сделать, чтобы скорость перемещения мыши (или её сенса) осталась прежней?


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

Потестил, ещё один недостаток - просто вылетает после нескольких нажатий. Иногда сразу, иногда после 4-5 использования.


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

+ Иногда вот такая ошибка вылетает((
 
Верх