如何将已经存在的文本窗口,重新获得焦点提到最前面来

动作需求 · 838 次浏览
轻风拂柳 创建于 2021-03-21 02:29

情景如下:

我在全屏看某讲解视频,或全屏看电影,有要点或灵感需要记录下来。于是我打开“临时便签”。

这就打开了,我也记录了。

当便签失去焦点后,我又继续全屏看电影。

看了一会,我又有想法需要接着记录,或需要对先前的便签进行修改:

然而,我这次打开的,不是刚才已经存在的便签,而是又建了一个新的便签。这不符合我的本意,因为原来的旧有便签我并没有关闭它,我只需要将旧有便签,提到最前方。如果我手动点叉关闭了,那么下一次就可以新建一个新的便签。

这个功能怎么实现呢?

我试了好久,无法做到,请求@CL @Ever,各位大神帮忙。

 


回复内容
轻风拂柳 2021-03-21 07:45
#1

自己添个楼,这个功能我已经实现了。

我制作的动作在这里:https://getquicker.net/sharedaction?code=16ca1f11-5126-4afc-dbc4-08d8eba728e7 

欢迎使用。

CL 2021-03-21 07:51
#2

这个可以做一个单独的程序,里面只放一个文本框。

在动作里使用“激活程序主窗口”模块,这样如果程序已经启动,就会把窗口放到前台,如果程序没启动,就会开一个新的。

在Quicker里是不好做的。要做的话在显示文本窗口以后,得到它的句柄,下次运行动作检查句柄是否存在,存在的话把它设置为前台窗口。

轻风拂柳 2021-03-21 08:42 :
谢谢回复,Quicker打开的文本窗口等,没有pid也没有句柄吧,那是大进程才有的东西,想要重新获取某个特定文本窗口的焦点好像也不容易实现。
CL 回复 轻风拂柳 2021-03-21 08:58 :

pid是进程id。每个窗口都有自己的句柄。可以在文本窗口显示之后,在已经获取焦点的情况下通过获取前台窗口的模块得到。

回复主贴