screen

    进程:主进程

    app 模块 emitted ready 事件之前,您不能使用此模块。

    screen是一个.

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

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

    • main.js

    Open in Fiddle

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

    1. let win
    2. app.whenReady().then(() => {
    3. const displays = screen.getAllDisplays()
    4. const externalDisplay = displays.find((display) => {
    5. return display.bounds.x !== 0 || display.bounds.y !== 0
    6. })
    7. win = new BrowserWindow({
    8. x: externalDisplay.bounds.x + 50,
    9. y: externalDisplay.bounds.y + 50
    10. })
    11. win.loadURL('https://github.com')
    12. })

    screen模块触发以下事件:

    返回:

    • event Event
    • newDisplay

    Event: ‘display-removed’

    返回:

    • event Event
    • oldDisplay

    当旧的窗口oldDisplay被移除的时候触发。

    Event: ‘display-metrics-changed’

    返回:

    • event Event
    • display
    • changedMetrics String[]

    display中的一个或多个值发生改变时发出。 changedMetrics是描述更改信息的字符串数组。 可能改变的值有bounds, workArea, scaleFactorrotation.

    方法

    模块有以下方法:

    screen.getCursorScreenPoint()

    返回 Point

    当前鼠标的绝对位置。

    注意: 返回值是一个 DIP 点,而不是屏幕物理点。

    返回主窗口

    screen.getAllDisplays()

    screen.getDisplayNearestPoint(point)

    返回离指定点最近的一个窗口

    screen.getDisplayMatching(rect)

    • rect

    返回离指定的图形最密切相交一个窗口Display

    • point

    返回 Point

    将屏幕物理点转换为屏幕DIP点。 相对于物理点的显示执行DPI缩放

    screen.dipToScreenPoint(point) Windows

    返回

    将屏幕DIP点转换为屏幕物理点。 相对于DPI的显示关系执行缩放

    screen.screenToDipRect(window, rect) Windows

    返回

    将屏幕物理矩阵转换为屏幕DIP矩阵。 相对最近于 window 的显示来执行DPI缩放。 如果 window 为空,将执行缩放到最近的 rect 的显示位置。

    screen.dipToScreenRect(window, rect) Windows

    • window | null

    返回 Rectangle