gpt4 book ai didi

VBScript - 使用 AppActivate 将焦点切换到窗口

转载 作者:行者123 更新时间:2023-12-04 08:48:09 25 4
gpt4 key购买 nike

我们有多台电视,每台电视都连接到不同的计算机。目标是在通过两个应用程序循环的连续循环上显示/设置焦点。这必须在所有电视上同步。最初,我通过发送 alt+esc 键来设置它在任务栏中的所有应用程序中循环。效果很好,但很难在所有电视上同步。所以我使用 AppActivate 来设置焦点并根据偶数/奇数分钟在窗口之间切换。它现在已同步,但屏幕似乎每秒都在尝试将焦点设置到窗口,从而导致屏幕一直闪烁。我怎样才能避免它???有什么建议???
这是代码的一部分。

' Loop lasts 1 second

intSleep = 1000

Set wshShell = CreateObject("WScript.Shell")

'repeat process indefinetly

Do while infiniteloop=0
a = minute(time())
intResult = a Mod 2 ' to check for even/odd minute

If intResult = 0 Then
'display window1
if wshShell.AppActivate "Display - [Dashboard]" = false then
wshShell.AppActivate "Display - [Dashboard]"
end if

ElseIf intResult = 1 Then
'display window2
if wshShell.AppActivate "Display - [TEST]" = false then
wshShell.AppActivate "Display - [TEST]"
end if

End If
Wscript.Sleep intSleep

Loop

最佳答案

它每秒闪烁,因为变量 intResult等于 0整个偶数分钟。你需要的是另一个变量,比如 "intLastResult" .

在循环结束时,您将设置 intLastResult=intResult , 并重新执行 IF 语句以更改焦点,以便它们仅在当前结果与先前结果不同时执行。

IE。 "If intResult=0 AND intLastResult=1 Then" or "If intResult=1 AND intLastResult=0 Then"
这样他们每分钟应该只开火一次。

关于VBScript - 使用 AppActivate 将焦点切换到窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19385843/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com