Цитата:
Сообщение от St@rz
Почитай тут. И тут. Где то там я встречал решение подобной задачи. AutoHotkey должен помочь. 
|
спасибо!
Вот что родилось в итоге:
на руле 6 кнопок: 2 громкость, 2 треки переключать, MODE, MUTE
громкость всегда управляет громкостью, муте - муте
моде - переключает по кругу приложения (если их нет - то запускает)
треки туда-сюда - в зависимости от активного окна - разные действия. для проигрывателя - переключение дорожек, для навигации - изменение масштаба
реально очень мощная прога.
если кому интересно -
Код:
circlevar=0
^!NumpadDiv:: ;Кнопка MODE на руле
If circlevar = 2
{
circlevar = 0
}
goto %circlevar%
Return
0:
IfWinExist, PocketGIS
{
WinActivate
WinMaximize
circlevar++
}
else
{
Run, %ProgramFiles%\PocketGis\pgs.exe, Maximize
WinWait, ahk_class #32770, , 5
WinClose, ahk_class #32770
WinMaximize, PocketGIS
circlevar++
}
return
1:
IfWinExist, inCarTerminal
{
WinActivate
circlevar++
}
else
{
Run, %ProgramFiles%\inCar Terminal\ict.exe
circlevar++
}
return
^!NumpadAdd:: ;Кнопка VOL+ на руле
Send, {Volume_Up}
Return
^!NumpadSub:: ;Кнопка VOL- на руле
Send, {Volume_Down}
Return
^!NumpadMult:: ;Кнопка MUTE на руле
Send, {Volume_Mute}
Return
^!F5:: ;Кнопка PREV на руле
IfWinActive, PocketGIS
{
MouseClick, Left, 760, 480
Return
}
IfWinActive, inCarTerminal
{
MouseClick, Left, 50, 50
Return
}
IfWinActive, ahk_class russa
{
MouseClick, Left, 41, 58
Return
}
^!F6:: ;Кнопка NEXT на руле
IfWinActive, PocketGIS
{
MouseClick, Left, 760, 400
Return
}
IfWinActive, inCarTerminal
{
MouseClick, Left, 120, 50
Return
}
IfWinActive, ahk_class russa
{
MouseClick, Left, 21, 58
Return
}