我有一些简单的ahk代码,当我使用Firefox时效果很好,但我无法构建Chrome的等效代码。我们的想法是,代码的功能部分只应在Chrome打开时“应用”并激活(聚焦)窗口。
这适用于Firefox:
;MUST BE LAST PART OF SCRIPT!!
SetTitleMatchMode, 2
`#IfWinActive, - Mozilla Firefox
;Above "- Mozilla Firefox" substring appears in all Firefox windows
{code to be applicable goes here}
`#ifwinactive
问题是Chrome没有Window Title,所以我无法构建`#IfWinActive行。
有没有人知道如何为Chrome做这件事? 甚至可能是因为脚本可以检测到Firefox或Chrome处于活动状态并专注于什么?
答案 0 :(得分:0)
尝试使用您的AHK Windows Spy。您将找到以下类数据:
Autohotkey - How to restrict commands to when Chrome open - Stack Overflow - Google Chrome
ahk_class Chrome_WidgetWin_1
ahk_exe chrome.exe
每个窗口标题的一部分IS" Google Chrome"最后,你应该尝试使用ahk_class Chrome_WidgetWin_1
请记住,#IfWinActive仅适用于热键之类的东西。您只需将代码放在那里,并希望代码在激活Chrome后立即运行。如果这是你想要的,你将不得不使用一个检查循环或OnMessage。
答案 1 :(得分:0)
jcarerra,如果您想使用相同的热键,在两个或多个不同的应用程序中执行相同的任务,您可以按以下方式对应用程序进行分组:
if (e.Row.RowType == DataControlRowType.DataRow)
{
TableCell cell = e.Row.Cells[6];
string Failures = cell.Text.ToString().Trim();
string date = e.Row.Cells[5].ToString();
if (Failures == "0" || Failures == "NULL")
{
cell.BackColor = Color.Green;
}
else
{
cell.BackColor = Color.Red;
}
}
在这个例子中,我使用了Chrome和FireFox中的Application类ID,并将它们组合成一个名为MyBrowsers的组。然后在#IfWinActive函数中,引用组名MyBrowsers。
希望这有帮助