3.2 KiB
screen
Retrieve information about screen size, displays, cursor position, etc.
You cannot require or use this module until the ready
event of the app
module is emitted.
screen
is an EventEmitter.
Note: In the renderer / DevTools, window.screen
is a reserved DOM
property, so writing let {screen} = require('electron')
will not work.
An example of creating a window that fills the whole 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')
})
Another example of creating a window in the external display:
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')
}
})
The Display
object
The Display
object represents a physical display connected to the system. A
fake Display
may exist on a headless system, or a Display
may correspond to
a remote, virtual display.
display
objectid
Integer - Unique identifier associated with the display.rotation
Integer - Can be 0, 90, 180, 270, represents screen rotation in clock-wise degrees.scaleFactor
Number - Output device's pixel scale factor.touchSupport
String - Can beavailable
,unavailable
,unknown
.bounds
Objectsize
ObjectworkArea
ObjectworkAreaSize
Object
Events
The screen
module emits the following events:
Event: 'display-added'
Returns:
event
EventnewDisplay
Object
Emitted when newDisplay
has been added.
Event: 'display-removed'
Returns:
event
EventoldDisplay
Object
Emitted when oldDisplay
has been removed.
Event: 'display-metrics-changed'
Returns:
event
Eventdisplay
ObjectchangedMetrics
Array
Emitted when one or more metrics change in a display
. The changedMetrics
is
an array of strings that describe the changes. Possible changes are bounds
,
workArea
, scaleFactor
and rotation
.
Methods
The screen
module has the following methods:
screen.getCursorScreenPoint()
Returns Object
:
x
Integery
Integer
The current absolute position of the mouse pointer.
screen.getPrimaryDisplay()
Returns Display
- The primary display.
screen.getAllDisplays()
Returns Display[]
- An array of displays that are currently available.
screen.getDisplayNearestPoint(point)
point
Objectx
Integery
Integer
Returns Display
- The display nearest the specified point.
screen.getDisplayMatching(rect)
rect
Objectx
Integery
Integerwidth
Integerheight
Integer
Returns Display
- The display that most closely intersects the provided bounds.