如何在所有其他Windows之上的窗口中使用Electron作为Skype的指示器

时间:2018-03-12 09:39:26

标签: javascript node.js windows electron

帮助创建相同的窗口,就像我们打电话时的Skype一样,我们通过Electron看到带有呼叫信息的窗口。关键是此窗口始终位于计算机上所有Windows的顶部,包括游戏。

alwaysOnTop参数:true将窗口设置在所有其他Windows前面,但游戏以全屏模式覆盖它。

是否有可能以及如何在电子中实施或以何种方式实施?

2 个答案:

答案 0 :(得分:1)

设置 window.setAlwaysOnTop(true, "normal") 可以按照建议的那样做 Alok Kamboj

我被困在同样的事情上,并设法使用这个特定的 hack(按这个特定的顺序)始终处于最佳状态 -

// Tricky way to bring cam bubble to top over fullscreen windows on mac
  win.setVisibleOnAllWorkspaces(true, { visibleOnFullScreen: true });
  win.setAlwaysOnTop(true, "floating");
  win.setFullScreenable(false);
  // Below statement completes the flow
  win.moveTop();

现在这曾经在我使用电子 9.3.5 时有效,但在我升级到 13.1.2 后停止工作。现在我可以使用 "normal" 实现同样的目的。

答案 1 :(得分:0)

在macOS上,通过使用BrowserWindow实例方法win.setAlwaysOnTop()而不是alwaysOnTop标志,可以将窗口设置为总是在顶部,并提供更多选项:

win.setAlwaysOnTop(flag[, level][, relativeLevel])

  

值包括normalfloatingtorn-off-menu,   modal-panelmain-menustatuspop-up-menuscreen-saver,   和dock(已弃用)。默认值为floating

您可能希望尝试所有可能的级别值,以获得可能符合您需求的级别值。

相关问题