这次想要记录的问题是electron的窗口设置,首先用到的配置是frame这个配置项。
我想要实现的效果是一个透明的窗口来展示我每天的日程项。但是在mac上默认的窗口是有上面的红绿灯状态和标题栏的。如图
但是我不想要这个条。我希望是整个窗口都是透明的。而且没有这个条的。那就需要使用到frame参数
将frame设置为false.就可以隐藏这个条了。
效果如下
看起来还不错,
接下来我想把背景设置为透明。
虽然使用opacity选项也可以。但是opacity会使得窗口中的内容的透明度也跟着一起变化了。就类似css中使用Opcity设置背景色。
所以这里需要用到另外一个配置项.backgroundColor。然而要使这个配置项支持透明度变化。就需要先设置另外一个配置项。即transparent。将它设置为true。然后就可以在backgroundColor中使用透明度。但是这里有个问题。就是backgroundColor中设置背景透明度不能使用类似rgba或者hsla这样的方式设置。而是要使用hex这种设置方式。即#AARRGGBB 后6位很好理解。就是常用的十六进制颜色。例如 白色是ffffff 黑色是000000 红色是ff0000 。但是前两位的透明度有点麻烦。比如想设置0.1的透明度。那么就需要先用0.1*255的结果四舍五入然后再把结果转化成16进制。可以使用以下的函数来得到16进制的透明度: