猿问

Electron防止因为win+D或返回桌面最小化。

问题描述

我想开发一个类似win7自带的桌面挂件,例如雨滴桌面的那种,但是win+D(或者右下角的返回桌面)会导致其最小化。

问题出现的环境背景及自己尝试过哪些方法

我试过官方的文档里minimizable 只是没有最小化按钮,我试了下右下角的返回桌面或者win+D,都会导致程序最小化。之后有人提醒我,如果检测到最小化再自动还原窗口效果如何?我自己也试了一下
mainWindow.on('minimize', () => {
console.log('最小化')
mainWindow.restore()
mainWindow.moveTop()
})
结果却很有趣,,如果点击最小化按钮,会消失立刻又弹出来,有过程动画,勉强算是达到效果。但是如果通过返回桌面或win+D的话,会导致最小化,不再显示。但是发现了有趣的事,如果我点击任务栏的其他窗口,想让其显示,比如win+D后我点qq聊点窗口,这时候聊天窗口和electron程序一起出现了,控制台报了两次最小化..........
之后我又进行尝试,发现窗口属性如果minimizable: false,alwaysOnTop: true同时存在的话(只存在其中一个达不到效果),达到了预期效果,并且没有过程动画,很满意。但是,这东西肯定不能一直置顶啊,要类似于嵌在壁纸里的效果,所以还是不行。
我实在是没思路了,要不可不可以像c++一样,设定父窗口为系统桌面呢?

你期待的结果是什么?

做出类似雨滴桌面的桌面挂件,或者说win7那种自带的桌面挂件。


慕勒3428872
浏览 660回答 1
1回答

烙印99

electron 是软件, 壁纸是壁纸, 或许你的思路不对?不是使得electron 恒定在桌面, 而是使得 electron 更改系统壁纸 ;
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答