"弹窗提示"窗口关闭后可能没有将焦点返还给原来激活的窗口

BUG反馈 · 899 次浏览
臭冬瓜 创建于 2023-02-10 21:15

今天遇到一个非常特殊的问题,查了半天,总算能够100%重现。

我编写一个动作,用"弹窗提示"动作对相关操作进行确认,确认后模拟快捷键ALT+F11打开VBA并执行VBA代码。但是确认后,窗口一直没有打开。

但是我如果不使用"弹窗提示"动作对相关操作进行确认时,可以模拟快捷键ALT+F11打开VBA并执行VBA代码。

我猜测是弹窗提示窗口关闭后,并没有将焦点返给之前激活的窗口造成的。

奇怪的是以前我一直使用这个动作没有问题,前几天升级到27好像也没有发现,今天回家突然就出现这个问题,升级到30问题仍在。

臭冬瓜 最后更新于 2023/2/10

回复内容
CL 2023-02-10 21:22
#1

弹窗需要关闭后一段时间才能将焦点恢复到窗口。

在1.36.26 之前,弹窗会自动恢复焦点到弹窗之前的窗口上。这会造成一个问题,如果弹窗后切换到别的窗口,弹窗关闭会意外的将焦点恢复到更早的窗口。 所以在1.36.26里去掉了自动恢复焦点的处理,这时候关闭弹窗可能需要一些时间才能恢复焦点窗口到前面的窗口上。

可以加一点延迟看看有没有效果。

臭冬瓜 回复 CL 2023-02-10 21:26 :

加过延时也解决不了问题才来发的帖。我现在已经退回到之前一直用的22版本,没有这个问题了。可以肯定是之后开发新版本的时候造成的,CL好好查查吧。

PS:我延时用了1S,够长了吧


臭冬瓜 最后更新于 2023-02-10 21:30
CL 回复 臭冬瓜 2023-02-10 21:28 :

能看出焦点到哪个窗口了么?

臭冬瓜 回复 CL 2023-02-10 21:33 :

不行加个参数,锁定一下吧,现在有些怕升级了,之前只用过QUICKER两个版本,一个是10,一个是22,都很稳定

CL 回复 臭冬瓜 2023-02-10 21:40 :

好的,我研究下这个问题。 另外可以使用 “等待窗口” 不抢占焦点。

CL 回复 臭冬瓜 2023-02-10 22:24 :

确实,焦点没有回到Word窗口中。我增加了一个参数并且默认启用,应该就不影响之前的动作了。

臭冬瓜 回复 CL 2023-02-10 22:39 :

已经将所有的"弹窗提示"改为"等待窗口"了

臭冬瓜 2023-02-10 21:29
#2

看不出来,可能是悬浮按钮,但是我关闭悬浮按钮也没有解决问题。

回复主贴