Mat*_*att 1 taskbar focus always-on-top electron
我的应用程序是全屏游戏的覆盖层(alwaysOnTop),当用户单击我的覆盖层时,它会获得焦点并在游戏顶部显示任务栏。获得焦点很好,但我无法显示任务栏。
它在BrowserWindow 文档中说:
不是无法聚焦的工具箱窗口
这意味着可以创建一个无法聚焦的窗口。
有谁知道如何创建工具箱窗口,或者只是避免在单击电子窗口时显示任务栏?
我应该提到我已经尝试setAlwaysOnTop过了skipTaskbar。我也有transparent: true和frame: false。
我创建的叠加层是“Safelane、Midlane、Offlane”按钮。当我运行该应用程序时,它显示在全屏应用程序(Dota 2)的顶部,如下所示:
单击界面后,会出现任务栏。如果全屏应用程序(Dota)失去焦点,任务栏出现在顶部,这会破坏体验的连续性:
我希望体验保持像第一张图片一样——当用户单击叠加层中的任何内容时,任务栏不应显示。
附加解决方案信息- 使用下面的 Gaafar 解决方案后
设置中的设置kiosk: true似乎不允许它呈现透明。setKiosk(true)在setTimeout窗口打开后使用似乎有效。
我还发现任何使用kiosk或fullscreen具有透明度的窗口都存在渲染问题。它会在自身之上渲染多次,并且无法取消渲染项目(css 中的 display: none 不会执行任何操作)。我解决这个问题的方法是使用Electron Window Manager创建一个kiosk没有任何内容的单个窗口,并使用 HTML / CSS 界面创建其他非 kiosk 窗口。结果:
skipTaskbar: true是为了防止在任务栏中显示您的应用程序。
要完全隐藏任务栏,请使用全屏或信息亭模式
fullscreen: true
或者
kiosk: true
编辑:存在一些问题,其中全屏或信息亭模式会阻止窗口的透明度。对我有用的解决方案是使用这些标志运行--enable-transparent-visuals --disable-gpu
问题与解决方案:https://github.com/electron/electron/issues/2170#issuecomment-145942717
| 归档时间: |
|
| 查看次数: |
4945 次 |
| 最近记录: |