我想从两个或多个屏幕上了解BrowserWindow
的位置。我猜Electron API没有给出一个方法。我该怎么做呢?有什么办法吗?
发布于 2018-05-30 10:10:34
没有直接的方法来实现这一点。但是下面的内容绝对可以达到你的目的。
const {BrowserWindow, screen} = require('electron');
let window = new BrowserWindow();
// Load a URL and show the window first
const winBounds = window.getBounds();
const whichScreen = screen.getDisplayNearestPoint({x: winBounds.x, y: winBounds.y});
// Returns the screen where your window is located
测试结果表明这是可行的。
发布于 2020-04-10 00:11:02
为了检测窗口在哪个屏幕内,在创建窗口后:
const win = new BrowserWindow({...});
使用Screen
接口和getDisplayNearestPoint()
方法,可以获取屏幕坐标:
const winBounds = win.getBounds();
const distScreen = screen.getDisplayNearestPoint({x: winBounds.x, y: winBounds.y})
另外,如果你想知道哪个屏幕上有鼠标光标,可以使用:
let cursor = screen.getCursorScreenPoint();
let distScreen = screen.getDisplayNearestPoint({x: cursor.x, y: cursor.y});
https://stackoverflow.com/questions/45634392
复制相似问题