Aller au contenu principal

screen

Récupère les informations sur la taille, l'écran, la position du curseur, etc.

Process: Main

Ce module ne peut pas être utilisé tant que l'événement ready du module app n'est pas émis.

screen est un EventEmitter.

[!NOTE] In the renderer / DevTools, window.screen is a reserved DOM property, so writing let { screen } = require('electron') will not work.

Un exemple de création d'une fenêtre qui prendra tout l'écran :

// Retrieve information about screen size, displays, cursor position, etc.
//
// For more info, see:
// https://www.electronjs.org/docs/latest/api/screen

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

let mainWindow = null

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

Autre exemple de création d'une fenêtre dans l'écran externe :

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

let win

app.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.

Événements​

Le module screen émet les événements suivants :

Événement : 'display-added'​

Retourne :

Émis lorsque newDisplay a été ajouté.

Événement : 'display-removed'​

Retourne :

Émis lorsque oldDisplay a été supprimé.

Événement 'display-metrics-changed'​

Retourne :

  • event Event
  • display Display
  • changedMetrics string[]

Émis lorsqu’un ou plusieurs mesures changent dans un display. changedMetrics est un tableau de chaîne de caractères décrivant les modifications. Les modifications possibles sont bounds, workArea, scaleFactor et rotation.

Méthodes​

Le module screen dispose des méthodes suivantes :

screen.getCursorScreenPoint()​

Retourne Point

La position absolue du pointeur de la souris.

Not supported on Wayland (Linux).

[!Note: La valeur de retour est un point DIP et non pas un point physique d'écran.

screen.getPrimaryDisplay()​

Retourne Display - L'écran principal.

screen.getAllDisplays()​

Retourne Display[] - Un tableau des écrans qui sont actuellement disponibles.

screen.getDisplayNearestPoint(point)​

Retourne Display - L'écran le plus proche du point spécifié.

screen.getDisplayMatching(rect)​

Retourne Display - L'écran qui correspond le plus aux limites d'intersection données.

screen.screenToDipPoint(point) Windows Linux​

Retourne Point

Convertit un point physique de l'écran en un point DIP de l'écran. L'échelle DPI (Dots (or Pixels) Per Inch) est calculée par rapport à l'écran contenant le point physique.

Pas actuellement pris en charge sur Wayland - si elle y est utilisée, elle retournera le point passé sans aucun changement.

screen.dipToScreenPoint(point) Windows Linux​

Retourne Point

Convertit un point DIP de l'écran en un point physique de l'écran. L'échelle DPI est calculée par rapport à l'affichage contenant le point DIP.

Non pris en charge actuellement sur Wayland.

screen.screenToDipRect(window, rect) Windows​

Retourne Rectangle

Convertit un rect physique de l'écran en un rect DIP de l'écran. L’échelle DPI est effectuée par rapport à l’affichage le plus proche de window. Si window est null, la mise à l'échelle sera effectuée sur l'affichage le plus proche de rect.

screen.dipToScreenRect(window, rect) Windows​

Retourne Rectangle

Convertit un rect DIP de l'écran en rect physique de l'écran. L’échelle DPI est effectuée par rapport à l’affichage le plus proche de window. Si window est null, la mise à l'échelle sera effectuée sur l'affichage le plus proche de rect.