screen
Récupère les informations sur la taille, l'écran, la position du curseur, etc.
Processus : 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.
Remarque : Dans le renderer / DevTools, window.screen
est une propriété réservée du DOM, donc cela ne fonctionnera pas si vous écrivez let { screen } = require('electron')
.
Un exemple de création d'une fenêtre qui prendra tout l'écran :
- main.js
// 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')
})
Un 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')
}
})
Événements
Le module screen
émet les événements suivants :
Événement : 'display-added'
Retourne :
event
EventnewDisplay
Display
Émis lorsque newDisplay
a été ajouté.
Événement : 'display-removed'
Retourne :
event
EventoldDisplay
Display
Émis lorsque oldDisplay
a été retiré.
Événement 'display-metrics-changed'
Retourne :
event
Eventdisplay
DisplaychangedMetrics
string[]
Émis lorsqu’un ou plusieurs métrics 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.
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 d'écrans qui sont actuellement disponibles.
screen.getDisplayNearestPoint(point)
point
Point
Retourne Display - L'écran le plus proche du point spécifié.
screen.getDisplayMatching(rect)
rect
Rectangle
Retourne Display - L'écran qui croise le plus les limites d'intersection données.
screen.screenToDipPoint(point)
Windows
point
Point
Retourne Point
Convertit un point physique de l'écran en un point DIP (Density-independent Pixels) de l'écran. L'échelle DPI (Dots (or Pixels) Per Inch) est calculée par rapport à l'écran contenant le point physique.
screen.dipToScreenPoint(point)
Windows
point
Point
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.
screen.screenToDipRect(window, rect)
Windows
window
BrowserWindow | nullrect
Rectangle
Retourne Rectangle
Convertit un rect physique de l'écran en un rect DIP de l'écran. L'échelle des DPI est calculée par rapport à l'affichage le plus proche de window
. Si window
est null, la mise à l'échelle sera calculée par rapport à l'affichage le plus proche de rect
.
screen.dipToScreenRect(window, rect)
Windows
window
BrowserWindow | nullrect
Rectangle
Retourne Rectangle
Convertit un rect DIP de l'écran en rect physique de l'écran. L'échelle des DPI est calculée par rapport à l'affichage le plus proche de window
. Si window
est null, la mise à l'échelle sera calculée par rapport à l'affichage le plus proche de rect
.