Send
Эмулирует нажатие клавиш в активном окне.
Send ( "keys" [, flag = 0 ] )
Параметры
keys | Последовательность нажимаемых клавиш. |
flag |
[необязательный] Изменяет интерпретацию параметра keys: 0 - (по умолчанию), текст содержит специальные символы, такие как + и !, указывающие на нажатия Shift и Alt. 1 - клавиши как есть (спец-символы {}^+! как обычный текст). |
Примечания
AutoIt может эмулировать нажатия всех символов ASCII и дополнительных ASCII символов (0-255), чтобы отправить символы UNICODE вы должны использовать опцию "ASC" и код символа, который нужно эмулировать (см. {ASC nnnn} в таблице ниже).Команда (если flag=0) | Результат эмуляции |
---|---|
{!} | ! |
{#} | # |
{+} | + |
{^} | ^ |
{{} | { |
{}} | } |
{SPACE} | SPACE (пробел) |
{ENTER} | Enter основной клавиатуры |
{ALT} | ALT |
{BACKSPACE} или {BS} | Backspace |
{DELETE} или {DEL} | Delete |
{UP} | Стрелка вверх |
{DOWN} | Стрелка вниз |
{LEFT} | Стрелка влево |
{RIGHT} | Стрелка вправо |
{HOME} | Home |
{END} | End |
{ESCAPE} или {ESC} | Esc (Escape) |
{INSERT} или {INS} | Insert (Ins) |
{PGUP} | PageUp |
{PGDN} | PageDown |
{F1} - {F12} | Функциональные клавиши |
{TAB} | Tab |
{PRINTSCREEN} | Клавиша Print Screen (Prt Scr SysRq) |
{LWIN} | Левая клавиша Windows |
{RWIN} | Правая клавиша Windows |
{NUMLOCK on} | Num Lock (on/off/toggle) (включить/выключить/переключить) |
{CAPSLOCK off} | Caps Lock (on/off/toggle) (включить/выключить/переключить) |
{SCROLLLOCK toggle} | Scroll Lock (on/off/toggle) (включить/выключить/переключить) |
{BREAK} | для Ctrl+Break |
{PAUSE} | Pause |
{NUMPAD0} - {NUMPAD9} | Цифры (цифровая клавиатура) |
{NUMPADMULT} | * (цифровая клавиатура) |
{NUMPADADD} | + (цифровая клавиатура) |
{NUMPADSUB} | - (цифровая клавиатура) |
{NUMPADDIV} | / (цифровая клавиатура) |
{NUMPADDOT} | . (цифровая клавиатура) |
{NUMPADENTER} | Enter (цифровая клавиатура) |
{APPSKEY} | Клавиша Windows App |
{LALT} | Левый Alt |
{RALT} | Правый Alt |
{LCTRL} | Левый Ctrl |
{RCTRL} | Правый Ctrl |
{LSHIFT} | Левый Shift |
{RSHIFT} | Правый Shift |
{SLEEP} | Клавиша спящего режима компьютера |
{ALTDOWN} | Удерживать Alt в нажатом состоянии, до {ALTUP} |
{SHIFTDOWN} | Удерживать Shift в нажатом состоянии, до {SHIFTUP} |
{CTRLDOWN} | Удерживать Ctrl в нажатом состоянии, до {CTRLUP} |
{LWINDOWN} | Удерживать левый Windows в нажатом состоянии, до {LWINUP} |
{RWINDOWN} | Удерживать правый Windows в нажатом состоянии, до {RWINUP} |
{ASC nnnn} | Выслать клавишу, указав её номер |
{BROWSER_BACK} | Только в 2000/XP: Кнопка "назад" в окне просмотра |
{BROWSER_FORWARD} | Только в 2000/XP: Кнопка "вперёд" в окне просмотра |
{BROWSER_REFRESH} | Только в 2000/XP: Кнопка "обновить" в окне просмотра |
{BROWSER_STOP} | Только в 2000/XP: Кнопка "остановить" в окне просмотра |
{BROWSER_SEARCH} | Только в 2000/XP: Кнопка "поиск" в окне просмотра |
{BROWSER_FAVORITES} | Только в 2000/XP: Кнопка "избранное" в окне просмотра |
{BROWSER_HOME} | Только в 2000/XP: Запускает браузер и переходит на домашнюю страницу |
{VOLUME_MUTE} | Только в 2000/XP: Выключить звук |
{VOLUME_DOWN} | Только в 2000/XP: Уменьшить звук (на 4% от 100) |
{VOLUME_UP} | Только в 2000/XP: Увеличить звук (на 4% от 100) |
{MEDIA_NEXT} | Только в 2000/XP: Следующий трек в медиа-плеере |
{MEDIA_PREV} | Только в 2000/XP: Предыдущий трек в медиа-плеере |
{MEDIA_STOP} | Только в 2000/XP: Остановить воспроизведение в медиа-плеере |
{MEDIA_PLAY_PAUSE} | Только в 2000/XP: Воспроизведение / пауза в медиа-плеере |
{LAUNCH_MAIL} | Только в 2000/XP: Запуск почтовой программы |
{LAUNCH_MEDIA} | Только в 2000/XP: Запуск медиа плеера |
{LAUNCH_APP1} | Только в 2000/XP: Запуск первой программы пользователя |
{LAUNCH_APP2} | Только в 2000/XP: Запуск второй программы пользователя |
Send("{ASC 065}")
Send("{ASC 2709}")
Send("{ASC 0xA95}")
Send("{DEL 4}") ; Эмулирует нажатие клавиши Del 4 раза
Send("{S 30}") ; Эмулирует нажатие клавиши 'S' 30 раз
Send("+{TAB 4}") ; Эмулирует нажатие Shift+Tab 4 раза
Send("{a down}") ; Удерживать клавишу A нажатой
Send("{a up}") ;Отпустить клавишу A
Send("{NumLock on}") ;Включает NumLock
Send("{CapsLock off}") ;Выключает CapsLock
Send("{ScrollLock toggle}") ;Переключает состояние ScrollLock
$n = 4
Send("+{TAB " & $n & "}")
$x = Chr(65)
Send("{" & $x & " 4}")
Команда | Описание |
---|---|
Send("{TAB}") | Перейти к следующему элементу управления (кнопка, checkbox и т.д.) |
Send("+{TAB}") | Перейти к предыдущему элементу управления. |
Send("^{TAB}") | Перейти к следующей вкладке (на вкладках диалогового окна) |
Send("^+{TAB}") | Перейти к предыдущей вкладке. |
Send("{SPACE}") | Можно использовать для переключения флажка или нажатия кнопки. |
Send("{+}") | Устанавливает галочку (Если это настоящий checkbox.) |
Send("{-}") | Снимает галочку. |
Send("{NumPadMult}") | Раскрывает дерево папки SysTreeView32. |
Команда | Описание |
---|---|
Send("!f") | Эмулирует Alt+f, для доступа к меню Блокнота (Alt+ф в русской локализации). Попробуйте другие клавиши! (При нажатии Alt эти буквы становятся подчёркнутыми). |
Send("{DOWN}") | Перемещение вниз по меню. |
Send("{UP}") | Перемещение вверх по меню. |
Send("{LEFT}") | Перемещение влево к новому меню или раскрыть подменю. |
Send("{RIGHT}") | Перемещение вправо к новому меню или свернуть подменю. |
См. также
SendAttachMode (Опция), SendKeepActive, SendKeyDelay (Опция), SendKeyDownDelay (Опция), ControlSend, BlockInput, HotKeySet, WinMenuSelectItemПример
; Эмуляция нажатия комбинации клавиш Win + R
; Send("#r")
Send("#к") ; если русский язык по умолчанию при загрузке OS, то вместо "#r" нужно "#к", либо в скрипте временно переключать на англоязычную раскладку.
; в англоязычном примере окно называется Run
$hWnd = WinWait("Запуск программы", "", 5)
If Not $hWnd Then
MsgBox(4096, 'Сообщение', 'Окно не найдено, завершаем работу скрипта')
Exit
EndIf
Sleep(100)
; Эмуляция ввода текста notepad.exe и нажатие Enter
Send("notepad.exe{Enter}")
; Ожидание 5 секунд до появление окна блокнота
$hWnd = WinWait("[CLASS:Notepad]", "", 5)
If Not $hWnd Then
MsgBox(4096, 'Сообщение', 'Окно не найдено, завершаем работу скрипта')
Exit
EndIf
Send("Сегодняшняя дата и время {F5}")
Sleep(1000)
; Закрывает блокнот.
WinClose($hWnd)
; При закрытии появится окно с предложением сохранить файл, classname вызываемого окна "#32770", эмулируем нажатие "TAB" для перемещения фокуса на вторую кнопку и "ENTER", чтобы отказаться от сохранения.
WinWaitActive("[CLASS:#32770]")
Sleep(500)
Send("{TAB}{ENTER}")