Page 1 of 1

не могу написать проверку

Posted: 01 Mar 2024, 15:01
by defoksik
нужно написать проверку к этому скрипту

Code: Select all

; Открытие окна
Gui Add, Picture, x0 y0 w800 h460, C:\hugiraneahk\hugirane.png
Gui Show, w800 h460, hugirane
return

; Обработчик закрытия окна
GuiClose:
ExitApp

Toggle := false  ; Переменная для отслеживания состояния цикла нажатия клавиши "Пробел"

$Space::  ; Нажатие и удерживание клавиши "Пробел"
if not Toggle {  ; Проверка, включен ли цикл нажатия клавиши "Пробел"
    Loop {
        if not GetKeyState("Space", "P")  ; Проверяем, не отпущена ли клавиша "Пробел"
            break  ; Если клавиша отпущена, выходим из цикла

        Send, {Space}  ; Отправляем нажатие клавиши "Пробел"
        Sleep, 50  ; Можно настроить задержку между нажатиями
    }
} else {
    Send, {Space}  ; Если скрипт на паузе, просто отправляем нажатие клавиши "Пробел"
}
return
нужно поcле gui сделать проверку на p, если p нажата то скрипт не идет дальше, не начинает цикл, а ждет повторного нажатия на p

помогите пожалуйста уже 6 дней голову ломаю

Re: не могу написать проверку  Topic is solved

Posted: 01 Mar 2024, 18:58
by mcl
defoksik wrote: нужно поcле gui сделать проверку на p, если p нажата то скрипт не идет дальше, не начинает цикл, а ждет повторного нажатия на p
А где переменная toggle переключается? Или в этом и задача?
И таки p или пробел?
Так, что ли?

Code: Select all

...
Toggle := false  ; Переменная для отслеживания состояния цикла нажатия клавиши "Пробел"

p::
	Toggle := not Toggle
	Return

#If Toggle
$Space::  ; Нажатие и удерживание клавиши "Пробел"
	Loop {
		if not GetKeyState("Space", "P")  ; Проверяем, не отпущена ли клавиша "Пробел"
			break  ; Если клавиша отпущена, выходим из цикла
	
		Send, {Space}  ; Отправляем нажатие клавиши "Пробел"
		Sleep, 100  ; Можно настроить задержку между нажатиями
	}
return

Re: не могу написать проверку

Posted: 02 Mar 2024, 09:57
by defoksik
@mcl Спасибо