AHK Pause\Play youtube 在未聚焦的 chrome 标签中
AHK Pause\Play youtube in an unfocused chrome tab
我想暂停并播放我在后台播放时使用快捷键播放的 YouTube 视频。但我无法理解如何定位 chrome 及其选项卡之一。
按快捷键
将 "spacebar" 键发送到 chrome youtube 选项卡。
这看起来很简单,但我对此很陌生,感谢任何帮助。
原始工作脚本:
SetTitleMatchMode, 2
ControlGet, OutputVar, Hwnd,,Chrome_RenderWidgetHostHWND1, Google Chrome
ControlFocus,,ahk_id %outputvar%
Loop {
IfWinExist, YouTube
break
ControlSend, , ^{PgUp} , Google Chrome
sleep 300
}
ControlSend, , {Space} , Google Chrome
ctrl + PgUp
用于在标签中循环,直到找到youtube标签,然后将space
发送到chrome。您必须根据您的系统调整睡眠定时器。
没有 YouTube 标签或根本没有 Chrome 将导致无限循环。包括安全检查!
当不在 chrome 中并按 alt+shift+p 时,这将 play/pause 一个 youtube 视频,对于在 youtube 上听音乐很有用。
它会在后台找到 youtube 标签,play/pause 然后 return 到你的工作标签
SetTitleMatchMode 2
controlID := 0
tabCount := 0
#IfWinNotActive, ahk_exe chrome.exe
; Play/pause
+!p::
ControlGet, controlID, Hwnd,,Chrome_RenderWidgetHostHWND1, Google Chrome
ControlFocus,,ahk_id %controlID%
IfWinExist, YouTube
{
ControlSend, Chrome_RenderWidgetHostHWND1, k , Google Chrome
return
}
tabCount := 0
Loop {
IfWinExist, YouTube
break
ControlSend, , ^{PgUp} , Google Chrome
sleep 150
tabCount := tabCount + 1
if tabCount > 10
return
}
ControlSend, , k , Google Chrome
Loop, %tabCount% {
ControlSend, , ^{PgDn} , Google Chrome
sleep 150
}
return
#IfWinNotActive
#Persistent
#NoEnv
#SingleInstance, Force
DetectHiddenWindows, On
SetWorkingDir %A_ScriptDir%
SetTitleMatchMode, 2
controlN := 0
return
#IfWinNotActive, ahk_exe chrome.exe
z & space::
chromeSend("{Space}")
return
z & right::
chromeSend("{Right}")
return
z & left::
chromeSend("{Left}")
return
chromeSend(keys)
{
ControlGet, controlN, Hwnd,,Chrome_RenderWidgetHostHWND1, Google Chrome
ControlFocus,,ahk_id %controlN%
Sleep, 50
ControlSend, Chrome_RenderWidgetHostHWND1, %keys% , Google Chrome
}
#IfWinActive, ahk_exe chrome.exe
z & space::
chromeSend("k")
return
z & right::
chromeSend("{Right}")
return
z & left::
chromeSend("{Left}")
return
使用此代码,您可以使用 z + space/arrows.
控制 youtube
我想暂停并播放我在后台播放时使用快捷键播放的 YouTube 视频。但我无法理解如何定位 chrome 及其选项卡之一。
按快捷键 将 "spacebar" 键发送到 chrome youtube 选项卡。
这看起来很简单,但我对此很陌生,感谢任何帮助。
原始工作脚本:
SetTitleMatchMode, 2
ControlGet, OutputVar, Hwnd,,Chrome_RenderWidgetHostHWND1, Google Chrome
ControlFocus,,ahk_id %outputvar%
Loop {
IfWinExist, YouTube
break
ControlSend, , ^{PgUp} , Google Chrome
sleep 300
}
ControlSend, , {Space} , Google Chrome
ctrl + PgUp
用于在标签中循环,直到找到youtube标签,然后将space
发送到chrome。您必须根据您的系统调整睡眠定时器。
没有 YouTube 标签或根本没有 Chrome 将导致无限循环。包括安全检查!
当不在 chrome 中并按 alt+shift+p 时,这将 play/pause 一个 youtube 视频,对于在 youtube 上听音乐很有用。 它会在后台找到 youtube 标签,play/pause 然后 return 到你的工作标签
SetTitleMatchMode 2
controlID := 0
tabCount := 0
#IfWinNotActive, ahk_exe chrome.exe
; Play/pause
+!p::
ControlGet, controlID, Hwnd,,Chrome_RenderWidgetHostHWND1, Google Chrome
ControlFocus,,ahk_id %controlID%
IfWinExist, YouTube
{
ControlSend, Chrome_RenderWidgetHostHWND1, k , Google Chrome
return
}
tabCount := 0
Loop {
IfWinExist, YouTube
break
ControlSend, , ^{PgUp} , Google Chrome
sleep 150
tabCount := tabCount + 1
if tabCount > 10
return
}
ControlSend, , k , Google Chrome
Loop, %tabCount% {
ControlSend, , ^{PgDn} , Google Chrome
sleep 150
}
return
#IfWinNotActive
#Persistent
#NoEnv
#SingleInstance, Force
DetectHiddenWindows, On
SetWorkingDir %A_ScriptDir%
SetTitleMatchMode, 2
controlN := 0
return
#IfWinNotActive, ahk_exe chrome.exe
z & space::
chromeSend("{Space}")
return
z & right::
chromeSend("{Right}")
return
z & left::
chromeSend("{Left}")
return
chromeSend(keys)
{
ControlGet, controlN, Hwnd,,Chrome_RenderWidgetHostHWND1, Google Chrome
ControlFocus,,ahk_id %controlN%
Sleep, 50
ControlSend, Chrome_RenderWidgetHostHWND1, %keys% , Google Chrome
}
#IfWinActive, ahk_exe chrome.exe
z & space::
chromeSend("k")
return
z & right::
chromeSend("{Right}")
return
z & left::
chromeSend("{Left}")
return
使用此代码,您可以使用 z + space/arrows.
控制 youtube