我正在使用WorkRave休息提醒,并希望在其余窗口出现时关闭我的屏幕.我知道怎么把它关掉.
如何在指定窗口(#IfWinActive ahk_class ...)出现时创建事件?
另外,我可以绑定%符号吗?{%}不起作用,而不是其他的.
inf*_*lch 11
要显示窗口的即时通知,请使用Shell Hook.这有时是如此之快,以至于autohotkey可以在您自己甚至看到窗口之前做出反应.
AutoHotkey论坛上演示了一个shell挂钩.
您的使用示例(几乎从论坛帖子逐字复制):
#Persistent
SetBatchLines, -1
Process, Priority,, High
Gui +LastFound
hWnd := WinExist()
DllCall( "RegisterShellHookWindow", UInt,hWnd )
MsgNum := DllCall( "RegisterWindowMessage", Str,"SHELLHOOK" )
OnMessage( MsgNum, "ShellMessage" )
Return
ShellMessage( wParam,lParam )
{
If ( wParam = 1 ) ; HSHELL_WINDOWCREATED := 1
{
WinGetTitle, Title, ahk_id %lParam%
If ( Title = "WorkRest" )
WinClose, ahk_id %lParam% ; close it immideately
}
}
Run Code Online (Sandbox Code Playgroud)
如果你想在命令中使用文字%符号,请使用AutoHotkey的转义字符,反引号`(与美国键盘上的〜相同的键)将其转义,如下所示:
MsgBox You are 200`% awesome!
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6322 次 |
| 最近记录: |