跟踪电子中的窗口大小

时间:2017-05-16 15:32:28

标签: electron

我今天刚开始玩Electron。我需要能够获得可用的窗口大小,并在窗口大小调整时更新它。

这似乎并不像传统的JS应用程序那么简单。什么是推荐的跟踪窗口大小的方法?

目前,我有我的主进程和单个渲染器,没有计划一次打开多个渲染器/窗口。

我试过使用以下内容,但它似乎完全错误,所以我一定误解了文档。

const {BrowserWindow} = require('electron').remote
BrowserWindow.getSize()

编辑:

通过观看应用程序的正文来跟踪高度是否合理?我可以将它设置为100%宽度/高度并观看它,但它看起来有点像黑客。

由于 汤姆

2 个答案:

答案 0 :(得分:2)

您可以尝试

const electron = require('electron')
const remote = electron.remote

remote.getCurrentWindow().webContents.getOwnerBrowserWindow().getBounds()

边界将具有当前窗口的坐标和大小,

{ 
  height: 1040,
  width : 837,
  x : 276,
  y : 78 
}

答案 1 :(得分:0)

这在v4.0.4中有效:

renderer.js 中的

import { remote } from "electron";

console.log('size:', remote.getCurrentWindow().getSize());
// size: [1000, 700]

console.log('bounds:', remote.getCurrentWindow().getBounds());
// bounds: {height: 700, width: 1000, x: 226, y: 97}
main.js 中的

import { BrowserWindow } from "electron";

let mainWindow: BrowserWindow

// ...after mainWindow is created
console.log('size:', mainWindow.getSize());
console.log('bounds:', mainWindow.getBounds());