请问如何在electron中创建一个新窗口时不让窗口获取到焦点?

我想要做一个类似QQ聊天弹窗的功能,使用new BrowserWindow()创建一个新窗口作为消息弹窗的窗口。但遇到一个棘手的问题,就是当这个窗口被创建时,会强行将当前的窗口拉到新创建的这个窗口,导致用户在其他窗口操作被中断。

我在electron官方文档里看到BrowserWindow的options里有个配置项是focusable,但我设置为false也无济于事,请大神帮忙指点一下,要在哪里能设置使得窗口新建后不会夺取焦点!

阅读 5.4k
1 个回答

未能找到直接配置options能实现这个功能,但通过曲线救国实现了功能。
在创建新窗口时new BrowserWindow({show: false}),创建一个隐形的窗口,然后通过win.showInactive()让窗口显示,这时窗口显示而不会夺取其他窗口的焦点。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题