【发布时间】:2019-02-17 02:40:58
【问题描述】:
我今天才开始玩 Electron。我需要能够获得可用的窗口大小,并在调整窗口大小时对其进行更新。
这似乎不像在传统的 JS 应用程序中那么简单。跟踪窗口大小的推荐方法是什么?
目前,我有我的主进程和一个渲染器,没有计划一次打开超过 1 个渲染器/窗口。
我尝试使用以下内容,但似乎完全错误,所以我一定误解了文档。
const {BrowserWindow} = require('electron').remote
BrowserWindow.getSize()
编辑:
通过观察应用程序的主体来跟踪高度是否合理?我可以将其设置为 100% 的宽度/高度并观看它,但这似乎有点 hack。
谢谢 汤姆
【问题讨论】:
-
“可用窗口大小”是指物理显示器的大小吗?否则,
getSize()应该可以工作,但您必须在BrowserWindowinstance 上调用它,而不是作为静态函数 -
谢谢,有道理。我应该更清楚一点,我实际上想知道当前应用程序窗口的大小(我猜这将是渲染器)?我需要做的是使用当前可用高度的大小来确定其他东西的大小。不幸的是,它需要以像素而不是百分比来完成。
-
您当前的应用程序窗口可能也是
BrowserWindow。如果您没有它的变量,您可以通过BrowserWindow.getFocusedWindow()检索它或从BrowserWindow.getAllWindows()静态函数中选择,然后在实例上使用getSize。此外,您可能还想听听它的'resize'事件。看看api docs
标签: electron