screen Type
⚠ Process Availability: Main ✔ | Renderer ❌ | Utility ❌ | Exported ✔
Retrieve information about screen size, displays, cursor position, etc.Process: MainThis module cannot be used 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:// Retrieve information about screen size, displays, cursor position, etc.//// For more info, see:// https://www.electronjs.org/docs/latest/api/screenconst { app, BrowserWindow, screen } = require('electron/main')let mainWindow = nullapp.whenReady().then(() => { // Create a window that fills the screen's available work area. const primaryDisplay = screen.getPrimaryDisplay() const { width, height } = primaryDisplay.workAreaSize mainWindow = new BrowserWindow({ width, height }) mainWindow.loadURL('https://electronjs.org')})Another example of creating a window in the external display:const { app, BrowserWindow, screen } = require('electron')let winapp.whenReady().then(() => { const displays = screen.getAllDisplays() const 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') }})> [!NOTE] Screen coordinates used by this module are Point structures. There are two kinds of coordinates available to the process:* Physical screen points are raw hardware pixels on a display.* Device-independent pixel (DIP) points are virtualized screen points scaled based on the DPI (dots per inch) of the display.
Static members
| Static member |
Description
|
|
|
Full Usage:
screen.dipToScreenRect (window, rect)
Parameters:
Option<BrowserWindow>
rect : Rectangle
Returns: Rectangle
Modifiers: inline |
⚠ OS Compatibility: WIN ✔ | MAC ❌ | LIN ❌ | MAS ❌ Converts a screen DIP rect to a screen physical rect. The DPI scale is performed relative to the display nearest to window. If window is null, scaling will be performed to the display nearest to rect.
|
|
An array of displays that are currently available.
|
|
The current absolute position of the mouse pointer.> [!NOTE] The return value is a DIP point, not a screen physical point.
|
|
|
|
|
|
The primary display.
|
Full Usage:
screen.offDisplayAdded handler
Parameters:
IOnDisplayAdded -> unit
Modifiers: inline |
Emitted when newDisplay has been added.
|
|
|
Full Usage:
screen.offDisplayMetricsChanged handler
Parameters:
IOnDisplayMetricsChanged -> unit
Modifiers: inline |
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.
|
|
|
Full Usage:
screen.offDisplayRemoved handler
Parameters:
IOnDisplayRemoved -> unit
Modifiers: inline |
Emitted when oldDisplay has been removed.
|
|
|
Full Usage:
screen.onDisplayAdded handler
Parameters:
IOnDisplayAdded -> unit
Modifiers: inline |
Emitted when newDisplay has been added.
|
|
|
Full Usage:
screen.onDisplayMetricsChanged handler
Parameters:
IOnDisplayMetricsChanged -> unit
Modifiers: inline |
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.
|
|
|
Full Usage:
screen.onDisplayRemoved handler
Parameters:
IOnDisplayRemoved -> unit
Modifiers: inline |
Emitted when oldDisplay has been removed.
|
|
|
Full Usage:
screen.onceDisplayAdded handler
Parameters:
IOnDisplayAdded -> unit
Modifiers: inline |
Emitted when newDisplay has been added.
|
|
|
Full Usage:
screen.onceDisplayMetricsChanged handler
Parameters:
IOnDisplayMetricsChanged -> unit
Modifiers: inline |
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.
|
|
|
Full Usage:
screen.onceDisplayRemoved handler
Parameters:
IOnDisplayRemoved -> unit
Modifiers: inline |
Emitted when oldDisplay has been removed.
|
|
|
|
⚠ OS Compatibility: WIN ✔ | MAC ❌ | LIN ✔ | MAS ❌ Converts a screen physical point to a screen DIP point. The DPI scale is performed relative to the display containing the physical point.Not currently supported on Wayland - if used there it will return the point passed in with no changes.
|
Full Usage:
screen.screenToDipRect (window, rect)
Parameters:
Option<BrowserWindow>
rect : Rectangle
Returns: Rectangle
Modifiers: inline |
⚠ OS Compatibility: WIN ✔ | MAC ❌ | LIN ❌ | MAS ❌ Converts a screen physical rect to a screen DIP rect. The DPI scale is performed relative to the display nearest to window. If window is null, scaling will be performed to the display nearest to rect.
|
fable-electron-docs-api