1

Тема: AHK: Нажатие клавиши и клик по кнопке в свернутом окне

Помогите сделать скрипт суть которого следующая - имеется программа свернутая на панели задач, необходимо при запуске .exe файлика AHK чтобы в этой программе производилось нажатие определенной клавиши (скажем N) и после сразу же клик по кнопке в этой программе и всё. Единственное хотелось бы чтобы всё это происходило в свернутом виде не мешая возмодной работе пользователя в другой активной программе. Как такое можно реализовать?

2

Re: AHK: Нажатие клавиши и клик по кнопке в свернутом окне

Простейший пример.

GUI, Add, Button, gsub1, asdf
GUI, Show, w150, win1
Sleep, 2000
WinMinimize, win1
Sleep, 2000
ControlClick, Button1, win1
Return

sub1:
SoundBeep
Return

3

Re: AHK: Нажатие клавиши и клик по кнопке в свернутом окне

Спасибо за оперативный ответ. Но я как новичок в этом непонял как мне эти манипуляции применить к своей программе, как отредактировать данный скрипт под себя поясните пожалуйста. И в дагонку такой вопрос можно ли сделать чтобы в трее не светился скрипт после выполнения, при повторном запуске ошибка будет я так понимаю.

4

Re: AHK: Нажатие клавиши и клик по кнопке в свернутом окне

По сути Вам нужно разобраться в документации с ControlClick. Приведённый пример показывает, как средствами AutoHotkey можно послать нажатие ЛКМ Элементу управления (иначе говоря контролу), находящемуся в свёрнутом окне.

5

Re: AHK: Нажатие клавиши и клик по кнопке в свернутом окне

Спасибо ещё раз. Ознакомился с документацией и реализовал задуманное, но не совсем так как хотелось бы, все как бы работает, но всплывающее на пару десятых секунды окно все равно не очень хорошо, а если его не вызывать тогда я так понял не получается сделать нажатие клавиши.

6 (изменено: Grey, 2011-10-17 22:18:10)

Re: AHK: Нажатие клавиши и клик по кнопке в свернутом окне

Run, % "C:\Program Files\Windows NT"
                     . "\Accessories"
                     . "\wordpad.exe",, Min, WinPID
Sleep, 250
MsgBox, 262208,, % "запущен WORDPAD"
              . "`, свёрнутый на панель задач", 1
BlockInput, On
ControlClick, Button2, % "ahk_pid" WinPID,,, 20
ControlSend, RICHEDIT50W1, {vk4E}, % "ahk_pid" WinPID
WinMaximize, % "ahk_pid" WinPID
Sleep, 1000
ControlClick, Button1, % "ahk_pid" WinPID,,, 20
ControlSend, RICHEDIT50W1
           , % "{`n 2}была нажата клавиша N"
           . "{`n}и 20ть раз кнопка увеличить масштаб ({+})"
           . "{`n 2}сейчас приложение будет закрыто"
           . "{`n}F5 - повторить`, или Esc - закрыть скрипт"
           , % "ahk_pid" WinPID
Sleep, 1000
WinKill, % "ahk_pid" WinPID
ControlClick, Button2, ahk_class #32770,,, 2
BlockInput, Off

F5::Reload
Esc::ExitApp