Переменные
Переменная — это значение, сохранённое под именем. Один шаг её сохраняет; последующие шаги используют
её, записывая в поле $ и имя или выбирая её в разделе Сохранено предыдущими шагами меню значений
(Параметры шагов).
Сохранение результата шага
Заполните Сохранить результат как у шага, чтобы сохранить то, что он возвращает. Это обычный способ получить значение: окно, найденное шагом, прочитанный им текст, ответ, который кто-то выбрал.
Первый шаг читает буфер обмена и сохраняет текст как copied. Второй показывает его в окне сообщения.
Задание переменной
Элемент Задать переменную добавляет шаг, который сохраняет введённое вами значение. У него три поля:
| Поле | Что содержит |
|---|---|
| Переменная | Имя. Новый шаг получает свободное имя вроде value или value2. |
| Значение | Значение, $ и имя другой переменной, чтобы скопировать её, или значение из меню значений (Параметры шагов), например Текст из буфера обмена. |
| Тип | Текст, Целое число, Число или Истина или ложь. Скрыто, пока Значение содержит значение из меню. |
Тип — это то, что выбрали вы, а не то, как выглядит значение: при типе Текст 42 — это текст «42», а
не число 42. Текст может быть пустым; остальным типам нужно значение, которое проверяется, как в любом поле
(Параметры шагов).
Значение из меню сохраняет то, что прочитано при выполнении шага, с собственным типом этого значения,
поэтому выбирать Тип не нужно. Ввод скриптового имени такого значения с пустыми скобками, например
ClipboardGetText(), равносилен его выбору при любом типе. Значение Текст, которое является вызовом
встроенной функции с чем-то в скобках, например WindowGetTitle($w), сохраняется как эти символы и не
выполняется; форма сообщает об этом. Чтобы сохранить результат такого вызова, используйте вместо этого
Сохранить результат как в шаге этой встроенной функции.
Задание уже существующей переменной заменяет её значение.
Типы значений
У каждого значения один из этих типов. Названия в редакторе и в справочнике по скриптам:
| В редакторе | В справочнике по скриптам | Примеры |
|---|---|---|
| Текст | Text | Блокнот, пустой текст |
| Целое число | Integer | 0, -12, 0xB3, VirtualKey.F5 |
| Число | Real | 0.5, 2.0 |
| Истина или ложь | Bool | вкл. / выкл., true / false |
| окно | Window | Целевое окно, окно, найденное шагом |
Окно нельзя ввести; оно берётся из меню значений или из результата шага. Как каждый тип считается истиной или ложью в условии, описано на странице Типы значений.
Имена
Имя переменной:
- состоит из букв, цифр и
_и не начинается с цифры; - не является
if,else,for,trueилиfalse; - учитывает регистр:
Windowиwindow— две разные переменные.
$, введённый в начале имени, отбрасывается, поэтому $count и count обозначают одну и ту же переменную.
Правила, которые нужно знать
- Порядок важен. Переменная существует начиная с шага, который её сохраняет. Редактор не проверяет, что переменная сохраняется до использования или что после перемещения шагов сохраняющий шаг остаётся выше. Переменная, которая ни разу не сохранялась, читается как целое число 0.
- Переменные живут один запуск. При каждом выполнении действие начинается без переменных. Чтобы сохранить значение между запусками и перезапусками, используйте шаги Сохранить значение между перезапусками и Прочитать сохранённое значение (из Все встроенные функции (N)…; см. Как выполняются скрипты).
- У фрагмента свои переменные. Фрагмент, вызванный из действия, не видит переменные действия, а действие не видит переменные фрагмента.
- Арифметики нет. Поле принимает значение или переменную, но никогда не вычисление вроде
$count + 1. Для этого используйте скрипт (От шагов к скрипту).