Что нового

[Мышь, клавиатура] Сохранения координат после двух кликов

Notum

Новичок
Сообщения
71
Репутация
0
Приветствую,
задача - сохранить координаты первого и второго клика в разные переменные.

Код:
#Include <Misc.au3>
$dll = DllOpen("user32.dll")

Local $aArreaCoord[2]
$aArreaCoord[0] = 0
$aArreaCoord[1]= 0

$i = 0
While $i < 2
	Sleep(50)
    If _IsPressed("01", $dll) Then
		$MousePos = MouseGetPos()
		$aArreaCoord[$i] = $MousePos[0] & " " & $MousePos[1]
		$i = $i  + 1
    EndIf
WEnd
DllClose($dll)
MsgBox(0,"_IsPressed", "Координаты первого клика " & $aArreaCoord[0])
MsgBox(0,"_IsPressed", "Координаты второго клика " & $aArreaCoord[1])
Exit


Подскажите, где у меня ошибка?
Заранее спасибо!
 

dwerf

Использует ArchLinux
Сообщения
478
Репутация
219
Notum сказал(а):
Подскажите, где у меня ошибка?
Заранее спасибо!

Слишком долго кнопку нажатой держите - скрипт сразу два раза успевает среагировать.

Код:
#Include <Misc.au3>
$dll = DllOpen("user32.dll")

Local $aArreaCoord[2]
$aArreaCoord[0] = 0
$aArreaCoord[1]= 0

$i = 0
While $i < 2
    Sleep(50)
    While _IsPressed("01", $dll)
		If $aArreaCoord[$i] = 0 Then
			$MousePos = MouseGetPos()
			$aArreaCoord[$i] = $MousePos[0] & " " & $MousePos[1]
		EndIf
    WEnd
	If $aArreaCoord[$i] <> 0 Then $i += 1
WEnd
DllClose($dll)
MsgBox(0,"_IsPressed", "Координаты первого клика " & $aArreaCoord[0])
MsgBox(0,"_IsPressed", "Координаты второго клика " & $aArreaCoord[1])
Exit
 
Верх