[FAQ] Учимся AHK-скриптингу

Тема в разделе "Помощь", создана пользователем Artem Galyan, 6 авг 2018.

Статус темы:
Закрыта.
  1. Artem Galyan

    Artem Galyan Легенда

    Сообщения:
    1.507
    Симпатии:
    692
    Баллы:
    113
    Адрес:
    Брест, Беларусь
    Ник:
    Artem_Enoqyan
    Сервер:
    01
    Для того, чтобы начать писать скрипты у нас должны быть эти программы: AutoHotKey, Notepad++ (по желанию).


    И так, после установки AutoHotKey мы должны кликнуть правой кнопкой мыши в свободном месте в папке/на рабочем столе > создать > AutoHotKey script.

    Дальше называем его, я, например, назвал его "Обучение". Далее нажимаем на него правой кнопкой мыши > edit with Notepad++, если же вы хотите в блокноте, то нажмите "Edit script". И вот, мы запустились. При запуске увидим вот такую картину (https://i.imgur.com/UebF4pv.png)

    Убираем теперь всё, оставляем только "#NoEnv". Теперь начнём, напишем один простой AutoHotKey-скрипт:
    Numpad1::
    SendMessage, 0x50,, 0x4190419,, A
    SendInput, {F6}Это мой первый скрипт, ура{!}{enter}
    sleep 1500
    SendInput, {F6}RPAHK, спасибо Вам{!}{enter}
    return

    Теперь разложим всё по полочкам
    1. Numpad1:: - команда, которая указывает скрипту, что делать при нажатие Numpad 1, примечание: оно будет работать только при включённом NumLock`e.
    2. SendMessage, 0x50,, 0x4190419,, A - включаем русскую раскладку для того, чтобы избежать "?????".
    3. SendInput, {F6}Это мой первый скрипт, ура{!}{enter} - оператор SendInput даёт скрипту понять, что сейчас он должен будет что-то посылать, в нашем случае сначала нажатие кнопки F6, мы её берем в "{" и "}", так как посылается нажатие клавиши, затем мы посылаем текст - "Это мой первый скрипт, ура!", только берём "!" в "{" и "}", так как скрипт при виде того, что ему нужно послать "!" посылает символ "!" и нажимает Alt. {enter} - посылаем нажатие клавиши Enter.

    4. sleep 1500 - ставим скрипт на паузу, которая длится 1500 мс, т.е. 1.5 секунды
    5. Посылаем текст, расписано в 3-м пункте
    6. Завершаем скрипт
    Список всех горячих клавиш находится в самом низу!

    Вот, мы написали наш очень простой, но первый, AutoHotKey-скрипт. Теперь бегом в игру его проверять!




    Теперь я вам покажу, как сделать активацию скрипта какой-нибудь командой. Снова, открываем наш скрипт и после всего пишем следующее:


    :?:/привет::
    SendMessage, 0x50,, 0x4190409,, A
    SendInput,Привет, мир{!}{enter}
    return


    Давайте снова разберём скрипт:
    1. :?:/привет:: - говорим скрипту, что он будет активироваться при вводе "/привет", команду можно менять
    2. SendMessage, 0x50,, 0x4190409,, A - меняем раскладку на русскую, в нашем случае это необязательно
    3. SendInput,Привет, мир{!}{enter} - посылаем наш текст в чат, нажатие F6 не нужно, так как чат уже открыт
    4. return - завершаем скрипт

    Так же присутствует опрератор :c1*: , который используется в том случае, когда текст нужно заменить сразу, т.е. вы ввели что-то и он сразу поменял, а :?: ждёт нажатия проблел/ентер, т.е. определяет слово целиком



    Дополнительные материалы:

    Код:
    Названия клавиш:
    
    Примечание: названия буквенных и цифровых клавиш точно такие же, как и сами символы этих клавиш. То есть, клавиша "b" записывается как b, а клавиша "5" как 5.
    Space - пробел
    Tab
    Enter (или Return)
    Escape (или Esc)
    Backspace (или BS)
    Delete (или Del)
    Insert (или Ins)
    Home
    End
    PgUp
    PgDn
    Up
    Down
    Left
    Right
    ScrollLock
    CapsLock
    NumLock
    NumpadDiv - слэш "/"
    NumpadMult - звездочка "*"
    NumpadAdd - плюс "+"
    NumpadSub - минус "-"
    NumpadEnter - клавиша "Numpad-Enter"
    Следующие названия клавиш используются, когда Numlock выключен:
    NumpadDel
    NumpadIns
    NumpadClear - та же кнопка, что и Numpad5 на клавиатуре
    NumpadUp
    NumpadDown
    NumpadLeft
    NumpadRight
    NumpadHome
    NumpadEnd
    NumpadPgUp
    NumpadPgDn
    Эти названия клавиш используются при включенном Numlock'e:
    Numpad0
    Numpad1
    Numpad2
    Numpad3
    Numpad4
    Numpad5
    Numpad6
    Numpad7
    Numpad8
    Numpad9
    NumpadDot - "Numpad-точка"
    С F1 по F24 - двенадцать или более функциональных клавиш, на большинстве клавиатур представлены в самом верхнем ряду.
    LWin - левая клавиша "Windows"
    RWin - правая клавиша "Windows"
    Control (или Ctrl)
    Alt
    Shift
    LControl (или LCtrl) - левый "Сontrol"
    RControl (или RCtrl) - правый "Сontrol"
    LShift
    RShift
    LAlt - левый "Alt"
    RAlt - правый "Alt". Примечание: если на вашей клавиатуре вместо клавиши RAlt сделана клавиша AltGr, вы можете использовать следующую запись данной клавиши: <^>! Также заметим, что клавишу AltGr можно записать как сочетание клавиш "LControl & RAlt::".
     
    Последнее редактирование: 6 авг 2018
    SaHyA097 и Andy Statton нравится это.
  2. Demy_Foster

    Demy_Foster Легенда

    Сообщения:
    1.081
    Симпатии:
    329
    Баллы:
    113
    Сервер:
    01
    Это конечно всё хорошо, но то что везде значки [​IMG] - не круто
    [​IMG]
     
  3. Alikhan_Shelekenov

    Alikhan_Shelekenov Человечище.

    Сообщения:
    691
    Симпатии:
    97
    Баллы:
    63
    Ник:
    Alikhan_Shelekenov
    Полезно..
     
  4. Kostya Monolit

    Kostya Monolit Известный

    Сообщения:
    347
    Симпатии:
    1.527
    Баллы:
    93
    Полезно, но вместо изображений - значки.:confused:
     
    g0$ka и ⓂⒶⓍ ⓃⓎⓁⒾⓂⓄⓋ нравится это.
  5. Artem Galyan

    Artem Galyan Легенда

    Сообщения:
    1.507
    Симпатии:
    692
    Баллы:
    113
    Адрес:
    Брест, Беларусь
    Ник:
    Artem_Enoqyan
    Сервер:
    01
    хм.. у меня такого нетo_O
     
    Andy Statton нравится это.
  6. Artem Galyan

    Artem Galyan Легенда

    Сообщения:
    1.507
    Симпатии:
    692
    Баллы:
    113
    Адрес:
    Брест, Беларусь
    Ник:
    Artem_Enoqyan
    Сервер:
    01
    Убрал все изображения, форум их показывать не совсем хочет:confused:
    -________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________-
     
    Andy Statton нравится это.
  7. Artem Scarpulla

    Artem Scarpulla Легенда

    Сообщения:
    1.075
    Симпатии:
    2.478
    Баллы:
    113
    Сайт:
    Ник:
    Artem_Scarpulla
    Сервер:
    03
    Полезная тема ;)
     
  8. Jackson_Stilinski

    Jackson_Stilinski Известный

    Сообщения:
    616
    Симпатии:
    206
    Баллы:
    93
    Сервер:
    01
    Здравствуйте, полезно.
    Возможно закрепят даже, ожидайте. ;)
     
  9. Dasha_Kiss

    Dasha_Kiss Участник

    Сообщения:
    177
    Симпатии:
    90
    Баллы:
    43
    Ник:
    Elsa_Mayer
    Сервер:
    02
    Здравствуйте, думаю, полезно
     
  10. Bastiano Lacoste

    Bastiano Lacoste Легенда

    Сообщения:
    4.551
    Симпатии:
    6.639
    Баллы:
    113
    Сервер:
    02
    Не будет закреплено.
     
Статус темы:
Закрыта.

Поделиться этой страницей

Присоединяйтесь к нам!

нас уже человек

Личный кабинет