gpt4 book ai didi

focus - Electron BrowserWindow 聚焦时显示任务栏

转载 作者:行者123 更新时间:2023-12-03 12:30:02 38 4
gpt4 key购买 nike

我的应用程序是全屏游戏的叠加层(alwaysOnTop),当用户单击我的叠加层时,它会获得焦点并在他们的游戏顶部显示任务栏。集中注意力很好,但我不能显示任务栏。

它在 BrowserWindow docs 中说:

not a toolbox window which can not be focused on



暗示可以创建一个无法聚焦的窗口。

有谁知道如何创建工具箱窗口,或者只是避免在单击 Electron 窗口时显示任务栏?

我应该提到我已经尝试过 setAlwaysOnTopskipTaskbar .我也有 transparent: trueframe: false .

我创建的叠加层是“Safelane、Midlane、Offlane”按钮。当我运行应用程序时,它会显示在全屏应用程序(Dota 2)的顶部,如下所示:

enter image description here

点击界面后会出现任务栏。全屏应用(Dota)失去焦点就好了,任务栏出现在顶部,破坏了体验的连续性:

enter image description here

我希望体验与第一张图片一样——当用户点击我的叠加层中的任何内容时,任务栏不应该显示。

Electron GitHub Issue

其他解决方案信息 -- 使用下面的 Gaafar 解决方案后

设置 kiosk: true在设置中似乎不允许它呈现透明。使用 setKiosk(true)setTimeout 内 window 打开后似乎工作。

我还发现任何使用 kiosk 的窗口或 fullscreen透明度有渲染问题。它会在自身之上多次渲染,并且无法取消渲染项目(在 css 中 display: none 不会做任何事情)。我解决这个问题的方法是使用 Electron Window Manager创建单个 kiosk没有任何内容的窗口,并使用 HTML/CSS 界面创建其他非信息亭窗口。结果:
  • 所有界面都可以交互,鼠标和键盘。
  • 渲染就像它在 Electron 中经常发生的那样发生。
  • 下面的全屏应用程序通过任何透明区域接收输入。
  • 任务栏永远不会出现在任何输入上。
  • 最佳答案

    skipTaskbar: true是为了防止在任务栏中显示您的应用程序。

    要完全隐藏任务栏,请改用全屏或信息亭模式
    fullscreen: true或者kiosk: true
    编辑:
    在全屏或信息亭模式阻止窗口透明的情况下,存在一些问题。
    对我有用的解决方案是使用这些标志运行 --enable-transparent-visuals --disable-gpu
    问题及解决方法:https://github.com/electron/electron/issues/2170#issuecomment-145942717

    关于focus - Electron BrowserWindow 聚焦时显示任务栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37713180/

    38 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com