屏幕

screen 模块用于检索有关屏幕大小,显示,光标位置等的信息 进程: 主进程 渲染进程

screen 是一个 EventEmitter.

注意: app模块必须用在 ready事件后.

注意: 在渲染进程或开发者工具栏中, window.screen 是一个预设值的 DOM属性, 所以 var screen = require('electron').screen 这样写的话是无效的.

创建一个全屏窗口的例子 :

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')
  }
})

Display 对象

Display对象表示连接到系统的物理显示器。虚拟 Display 可以存在于无头系统上, Display 也可以是对应于远程的虚拟显示器。

  • display object

    • id Integer - 与显示相关联的唯一标识符。

    • rotation Integer - 可选 0, 1, 2, 3, 每个代表顺时针方向的屏幕旋转角度, 可选 0, 90, 180, 270

    • scaleFactor Number -输出设备的像素比例因子。

    • touchSupport String - 是否支持触摸,可选 available, unavailable, unknown.

    • bounds Object Rectangle

    • size Object

      • height Number

      • width Number

    • workArea Rectangle

    • workAreaSize Object

      • height Number

      • width Number

事件

事件: 'display-added'

触发:添加 newDisplay显示器时

事件: 'display-removed'

触发:移除 oldDisplay显示器时

事件: 'display-metrics-changed'

触发:更改 display 中的一个或多个度量时

  • event Event

  • display Display

  • changedMetrics String[] 描述变化的字符串数组。可选 bounds, workArea, scaleFactorrotation

方法

screen.getCursorScreenPoint()

用途:获取当前鼠标指针坐标( Object)

  • x Integer

  • y Integer

screen.getPrimaryDisplay()

用途:获取当前主显示屏(Display)

screen.getAllDisplays()

用途:获取所有可用显示屏组成的数组(Display)

screen.getDisplayNearestPoint(point)

用途:获取离指定点最近的显示屏(Display)

  • point Object

    • x Integer

    • y Integer

screen.getDisplayMatching(rect)

用途:获取与提供的边界最接近的显示屏(Display)

Last updated