0

我对这个程序很陌生,并没有真正编写过很多脚本,所以我不知道从哪里开始。我需要做的是为我的 Xbox360 控制器设置热键,当按住时(3 秒)启动 Steam Big Picture,然后在该程序运行并按住键时(3 秒)Big Picture 将关闭,如果当前不在一个游戏。

这个脚本做了我想要它做的一半......

#IfWinNotExist, Steam ahk_class CUIEngineWin32
Joy7::
Process, Exist, Steam.exe
if ErrorLevel
Run, "steam://open/bigpicture"
else
Run, "D:\Program Files (x86)\Steam\Steam.exe" -bigpicture

我唯一想要改变的是:

  • Joy7 将更改为 Xbox360 “X”/指南按​​钮
  • 按住 Joy7(或以上键)3 秒
  • 在大画面(而非游戏)中按住键 3 秒可关闭/返回桌面

关于如何做到这一点的任何想法?任何帮助将不胜感激,谢谢!

4

1 回答 1

5

我手边没有 Xbox 控制器,因此无法使用指南按钮为您提供帮助。KeyHistory或遵循文档中的特殊键部分可能会为您提供帮助。

下面的代码应该让您顺利完成其他项目。如果您有任何问题,请告诉我。

#SingleInstance force
Joy7::
    keyDown := A_TickCount
    KeyWait, %A_ThisHotkey%
    If ((A_TickCount-keyDown) > 3000)
    {

        If ProcExists("Steam.exe")
        {
            If WinActive("ahk_exe Steam.exe")
            {
                Process, Close, Steam.exe
                Sleep 50
                Send #d
            }
            Else
                Run, "steam://open/bigpicture"
        }
        Else
            Run, "C:\Program Files (x86)\Steam\Steam.exe" ;-bigpicture
    }
Return

ProcExists(p) 
{    
    Process, Exist, % p
    Return    ErrorLevel
}
于 2013-10-22T13:06:49.593 回答