Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Переключение скриптов АХК

Сергей Ачкасов Ученик (100), открыт 1 неделю назад
У меня есть 3 ахк скрипта , на одни и те же сочетания клавиш, как мне сделать так , чтобы все эти три скрипта были в одном и переключались по сочетанию клавиш , например: чтобы ctrl+1 включал один скрипт ,ctrl+2 включал бы второй и т.д.?
3 ответа
Анатолий Зяблин Просветленный (27436) 1 неделю назад
Для переключения между тремя скриптами AutoHotkey (AHK) с помощью сочетаний клавиш, таких как Ctrl+1, Ctrl+2 и Ctrl+3, можно создать один основной скрипт, который будет управлять активацией этих скриптов. Вот пошаговая инструкция:

## Шаг 1: Установка AutoHotkey

Если у вас еще не установлен AutoHotkey, скачайте и установите его с официального сайта.

## Шаг 2: Создание основного скрипта

1. **Создайте новый файл AHK**:
- Щелкните правой кнопкой мыши на рабочем столе или в папке, выберите "Создать" -> "AutoHotkey Script".
- Назовите файл, например, `Switcher.ahk`.

2. **Откройте файл для редактирования**:
- Щелкните правой кнопкой мыши на созданном файле и выберите "Edit Script".

## Шаг 3: Написание кода для переключения

Вставьте следующий код в ваш скрипт:
 ; Определяем переменную для хранения текущего активного скрипта 
currentScript := 0

; Горячие клавиши для переключения скриптов
^1::
currentScript := 1
Run, C:\Path\To\Your\FirstScript.ahk
return

^2::
currentScript := 2
Run, C:\Path\To\Your\SecondScript.ahk
return

^3::
currentScript := 3
Run, C:\Path\To\Your\ThirdScript.ahk
return

; Закрытие всех скриптов при выходе из основного
^Esc::
if (currentScript = 1)
Process, Close, FirstScript.ahk
else if (currentScript = 2)
Process, Close, SecondScript.ahk
else if (currentScript = 3)
Process, Close, ThirdScript.ahk
ExitApp


### Пояснение кода:

- **currentScript**: Переменная для отслеживания активного скрипта.
- **^1::**, **^2::**, **^3::**: Эти строки определяют горячие клавиши Ctrl+1, Ctrl+2 и Ctrl+3 для запуска соответствующих скриптов.
- **Run**: Команда для запуска указанного скрипта.
- **^Esc::**: Команда для закрытия активного скрипта при нажатии Ctrl+Esc.

## Шаг 4: Сохранение и запуск

Сохраните изменения в файле и дважды щелкните на нем для запуска. Теперь вы сможете переключаться между вашими AHK-скриптами с помощью заданных сочетаний клавиш.

## Примечания

- Убедитесь, что пути к вашим AHK-скриптам указаны правильно.
- Если ваши скрипты уже запущены и вы хотите их закрыть перед запуском нового, вам нужно будет добавить дополнительную логику для завершения предыдущего процесса.

Этот метод позволяет удобно управлять несколькими AHK-скриптами с помощью простых сочетаний клавиш.
Сергей АчкасовУченик (100) 1 неделю назад
Это я знаю , я имею ввиду есть ли возможность не создавать 4 отдельных файла , а в одном все это сделать?
Дмитрий Анисифоров Гуру (2831) 1 неделю назад
Просто нажми ctrl+alt+Shift или в настройках панели управления.
a1987zz Мудрец (13026) 1 неделю назад
Ну так и ничего не понятно, о каком переключении речь.
Сергей АчкасовУченик (100) 1 неделю назад
Итак. Мои скрипты выполняют ряд функций, по ряду различных клавиш, расписывать все не буду, опишу только одну горячую клавишу.

Допустим у меня есть три скрипта:

1) при нажатии на 1 выполняется нажатие многократное нажатие "y"

2) при нажатии на 1 выполняется считывание цвета пикселя в определенном месте на экране и при попадании в нужный цвет отправляется нажатие на "e" и звуковой сигнал

3) при нажатии на 1 выполняется цикл нажатия на "y", ожидание в 9,4 секунды и нажатия на "e"

Вопрос в том можно ли сделать так, чтоб все эти три скрипта были в одном и при нажатии на сочетание клавиш сtrl+1 включался первый вариант нажатия на 1, при нажатии на сочетание клавиш ctrl+2, включался второй вариант нажатия на 1, а при нажатии на сочетание клавиш ctrl+3 включался третий вариант нажатия на 1
Похожие вопросы