Тема: AHK: Объявление, присваивание и сравнение переменных
Столкнулся с очень странным по моему мнению поведением скрипта, в связи с чем возникло множество вопросов:
x := 6
vk43::
if (x = 6)
Send, 6
return
Выражение в скобках не равно true. Сперва я решил, что x имеет тип float и дело в этом, но прочитав документацию, убедился, что x должен быть int. Попробовал вывести в MsgBox значение x и понял, что внутри кода клавиши переменную x вообще не видно. (хотя был полностью уверен что такое объявление делает x глобальной переменной). Прочитал в документации про области видимости и попробовал приписывать ключевое слово global в разных местах, погуглил на эту тему, и всё равно ничего не получилось. Больше идей где искать решение проблемы нет.
А хочу я сделать всего лишь следующее:
global i := 0
vk43::
if (i = 0)
Send, 6
else if (i = 1)
Send, 7
else if (i = 2)
Send, 8
i:= i + 1
if (i = 2)
i:= 0
return
То есть чтобы по нажатию одной клавиши по кругу последовательно выводились N символов.