|
Описание функции | |
| 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: Запуск второй программы пользователя |
exect=Send('{ASC~~065}')
exect=Send('{ASC~~2709}')
exect=Send('{ASC~~0xA95}')
exect=Send('{DEL~~4}') ;; Эмулирует нажатие клавиши Del 4 раза
exect=Send('{S~~30}') ;; Эмулирует нажатие клавиши 'S' 30 раз
exect=Send('+{TAB~~4}') ;; Эмулирует нажатие Shift+Tab 4 раза
exect=Send('{a~~down}') ;; Удерживать клавишу A нажатой
exect=Send('{a~~up}') ;;Отпустить клавишу A
exect=Send('{NumLock~~on}') ;;Включает NumLock
exect=Send('{CapsLock~~off}') ;;Выключает CapsLock
exect=Send('{ScrollLock~~toggle}') ;;Переключает состояние ScrollLock
exect=$var_i=4||Send('+{TAB~~'&$var_i&'}')
exect=$var_s=Chr(65)||Send('{'&$var_i&'~~4}')
| Команда | Описание |
|---|---|
| exect=Send('{TAB}') | Перейти к следующему элементу управления (кнопка, checkbox и т.д.) |
| exect=Send('+{TAB}') | Перейти к предыдущему элементу управления. |
| exect=Send('^{TAB}') | Перейти к следующей вкладке (на вкладках диалогового окна) |
| exect=Send('^+{TAB}') | Перейти к предыдущей вкладке. |
| exect=Send('{SPACE}') | Можно использовать для переключения флажка или нажатия кнопки. |
| exect=Send('{+}') | Устанавливает галочку (Если это настоящий checkbox.) |
| exect=Send('{-}') | Снимает галочку. |
| exect=Send('{NumPadMult}') | Раскрывает дерево папки SysTreeView32. |
| Команда | Описание |
|---|---|
| exect=Send('!f') | Эмулирует Alt+f, для доступа к меню Блокнота (Alt+ф в русской локализации). Попробуйте другие клавиши! (При нажатии Alt эти буквы становятся подчёркнутыми). |
| exect=Send('{DOWN}') | Перемещение вниз по меню. |
| exect=Send('{UP}') | Перемещение вверх по меню. |
| exect=Send('{LEFT}') | Перемещение влево к новому меню или раскрыть подменю. |
| exect=Send('{RIGHT}') | Перемещение вправо к новому меню или свернуть подменю. |
См. также
SendAttachMode (Опция), SendKeepActive, SendKeyDelay (Опция), SendKeyDownDelay (Опция), ControlSend, BlockInput, WinMenuSelectItem
| Примеры: | Как создать кнопку? |
exect=$var_i=4||Send('+{TAB~~'&$var_i&'}') ;; нажать TAB 4 раза
exect=Send('{TAB}') ;; нажать TAB
exect=Run('notepad.exe')||$var_h=WinWait('[CLASS:Notepad]',Null,5)||SendKeepActive(HWnd($var_h)) <FOR> 1 <TO> 10 exect=Send('привет')||Sleep(500) <NEXT> exect=SendKeepActive(Null)||WinClose(HWnd($var_h)) ;; запустить "Блокнот" и удерживать окно блокнота активным при использовании функции Send()
<TRAY=•~~CTRL+Q||1||TCIMG.dll,112> <PRESS=11,51> exect=MouseClick('right')||Sleep(300)||Send('SS{ENTER~~2}') <PRESS=1B> :EXIT: ;; по нажатию CTRL+Q в активном окне нажать ПКМ + 2 раза клавишу "S" + 2 раза "ENTER" (применяется для вызова настроенного контекстного меню FireFox для быстрого сохранения изображений)