非常教程

Electron参考手册

屏幕 | screen

屏幕 | screen

检索有关屏幕尺寸,显示,光标位置等的信息

过程:Main, Renderer

readyapp发射模块事件之前,您不能要求或使用此模块。

screen是一个EventEmitter。

注意:在renderer/DevTools中,window.screen是一个保留的DOM属性,所以写入let {screen} = require('electron')不起作用。

创建一个填充整个屏幕的窗口的示例:

const electron = require('electron')
const {app, BrowserWindow} = electron

let win

app.on('ready', () => {
  const {width, height} = electron.screen.getPrimaryDisplay().workAreaSize
  win = new BrowserWindow({width, height})
  win.loadURL('https://github.com')
})

在外部显示器中创建窗口的另一个示例:

const electron = require('electron')
const {app, BrowserWindow} = require('electron')

let win

app.on('ready', () => {
  let displays = electron.screen.getAllDisplays()
  let externalDisplay = displays.find((display) => {
    return display.bounds.x !== 0 || display.bounds.y !== 0
  })

  if (externalDisplay) {
    win = new BrowserWindow({
      x: externalDisplay.bounds.x + 50,
      y: externalDisplay.bounds.y + 50
    })
    win.loadURL('https://github.com')
  }
})

事件

screen模块发出以下事件:

事件:'display-added'

返回:

  • event事件
  • newDisplay显示

newDisplay已添加时发射。

事件:'display-removed'

返回:

  • event事件
  • oldDisplay显示

oldDisplay已被删除时发射。

事件:'display-metrics-changed'

返回:

  • event事件
  • display显示
  • changedMetricsString[]

当一个或多个指标发生变化时发射display。这changedMetrics是描述更改的字符串数组。可能发生的变化是boundsworkAreascaleFactorrotation

方法

screen模块具有以下方法:

screen.getCursorScreenPoint()

返回 Point

鼠标指针的当前绝对位置。

screen.getMenuBarHeight()MacOS

返回Integer- 菜单栏的高度(以像素为单位)。

screen.getPrimaryDisplay()

回报Display-主显示器。

screen.getAllDisplays()

返回Display[]- 当前可用的一系列显示。

screen.getDisplayNearestPoint(point)

  • point点返回Display- 距离指定点最近的显示。screen.getDisplayMatching(rect)
  • rect长方形

返回Display- 与提供的边界最接近的显示。

屏幕 | screen
屏幕 | screen 详细
Electron

Electron 是一个使用 JavaScript, HTML 和 CSS 等 Web 技术创建原生程序的框架,它负责比较难搞的部分,你只需把精力放在你的应用的核心上即可。

主页 https://electron.atom.io/
源码 https://github.com/electron/electron
发布版本 1.7.9