本文中描述的是electronwin下面的一个现存bugelectron官方宣布说已经fix。但是,在苏南大叔的测试下,截至到发稿,最新版的4.053.14都仍然存在着本文所描述的问题。所以,严重怀疑electron官方解决bug的诚意。

苏南大叔:win环境,electron如何解决由resizable:false引发的高度变化bug - electron-browserwindows-size
win环境,electron如何解决由resizable:false引发的高度变化bug(图3-1)

本文测试环境:win10electron@3.14

高度不断减小的bug

本文中的bug发生,是有特定环境的。win10环境,设置了resizablefalse,并且存在顶部菜单的情况下,就会触发本文描述的bugbug的现象是:最小化窗体后,再点击出来后,高度就会减小十几像素,而且会不断减小。每restore一次,窗体高度就减小一次...

注:从最小化或者最大化还原为正常窗体的事件,英文名为restore

苏南大叔:win环境,electron如何解决由resizable:false引发的高度变化bug - resizable-false-bug
win环境,electron如何解决由resizable:false引发的高度变化bug(图3-2)

触发条件再次总结:

  • win环境
  • resizable:false
  • 存在系统菜单(默认情况下都有顶部系统菜单的,比如debug环境下)

经过测试,这个变化的高度,很有可能是顶部菜单的高度。并且,bug触发的前提是禁止窗体调整大小。关于这个问题,相关的issue地址如下:

issue虽然已经被标记为fix,但是在苏南大叔的测试中,此bug仍然可以在最新版的electron中复现...从官方的态度上来看,可以看到似乎是很不在意这事啊....

苏南大叔:win环境,electron如何解决由resizable:false引发的高度变化bug - resizable-false-bug-issue
win环境,electron如何解决由resizable:false引发的高度变化bug(图3-3)

相关链接

总结

electron官方正式解决这个问题之前,大家就可以用本文的思路临时解决问题了。本文的方案应该不是最佳方案,欢迎大家演绎此代码并完善。当然最好的办法,就是electron官方真正的解决这个问题,不过也许只能慢慢等待了。

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留链接作者。
本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享。
转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议。
未经许可,规模化镜像抄袭本站内容的行为,将会根据有关法律法规进行维权。
程序如此灵动~》下所有原创文章,如被用于商业用途,请您按规定支付稿费。

 【加群】加入QQ群【175454274】和大家一起讨论这个问题

 【源码】本文代码片段及相关软件,请点此获取

 【绝密】秘籍文章入口,仅传授于有缘之人   electron

本站的忠实读者小伙伴,正在阅读下面这些文章: