BrowserWindow
CrĂ©ation et gestion des fenĂȘtres navigateur.
Process: Main
Ce module ne peut pas ĂȘtre utilisĂ© tant que l'Ă©vĂ©nement ready
du module app
n'est pas émis.
// Dans le processus main.
const { BrowserWindow } = require('electron')
const win = new BrowserWindow({ width: 800, height: 600 })
// Charge Ă partir d'une URL distante
win.loadURL('https://github.com')
// Ou Ă partir d'un fichier HTML local
win.loadFile('index.html')
Personnalisation de la fenĂȘtreâ
La classe BrowserWindow
permet de modifier l'apparence et le comportement des fenĂȘtres de votre application de diverses façons. Pour plus de dĂ©tails, voir le tutoriel Personnalisation de la fenĂȘtre .
Affichage gracieux de la fenĂȘtreâ
Lors du chargement direct dâune page dans la fenĂȘtre, les utilisateurs peuvent voir la page se charger progressivement, ce qui ne fait pas bonne impression pour une application native. Pour afficher la fenĂȘtre sans ce flash visuel, il existe deux solutions pour des situations diffĂ©rentes.
à l'aide de l'événement ready-to-show
â
Pendant le chargement de la page, l'événement ready-to-show
sera Ă©mis lorsque le processus de rendu aura affichĂ© la page pour la premiĂšre fois si la fenĂȘtre n'a pas encore Ă©tĂ© rendue. Afficher la fenĂȘtre seulement aprĂšs cet Ă©vĂ©nement permet d'Ă©viter tout flash visuel :
const { BrowserWindow } = require('electron')
const win = new BrowserWindow({ show: false })
win.once('ready-to-show', () => {
win.show()
})
Cet Ă©vĂ©nement est gĂ©nĂ©ralement Ă©mis aprĂšs lâĂ©vĂ©nement did-finish-load
, mais, attention, pour les pages accĂ©dant Ă beaucoup de ressources distantes, il peut ĂȘtre Ă©mis avant lâĂ©vĂ©nement did-finish-load
.
Veuillez noter que l'utilisation de cet Ă©vĂ©nement implique que le moteur de rendu est prĂ©sumĂ© "visible" et rafraĂźchit, mĂȘme si show
est à false. Cet événement ne se déclenchera jamais si vous utilisez paintWhenInitiallyHidden: false
Définition de la propriété backgroundColor
â
Pour une application complexe, lâĂ©vĂ©nement ready-to-show
peut ĂȘtre Ă©mis trop tard, donnant une impression de lenteur. Dans ce cas, il est recommandĂ© d'afficher la fenĂȘtre immĂ©diatement et d'utiliser un backgroundColor
proche de la couleur de fond de votre application :
const { BrowserWindow } = require('electron')
const win = new BrowserWindow({ backgroundColor: '#2e2c29' })
win.loadURL('https://github.com')
Notez que mĂȘme pour les applications qui utilisent l'Ă©vĂ©nement ready-to-show
, il est tout de mĂȘme recommandĂ© de dĂ©finir backgroundColor
pour que l'application semble plus native.
Voici quelques exemples de valeurs de backgroundColor
:
const win = new BrowserWindow()
win.setBackgroundColor('hsl(230, 100%, 50%)')
win.setBackgroundColor('rgb(255, 145, 145)')
win.setBackgroundColor('#ff00a3')
win.setBackgroundColor('blueviolet')
Pour plus dâinformations sur les diffĂ©rents formats de couleurs, consultez les options valides dans win.setBackgroundColor.
FenĂȘtres parent et enfantâ
En utilisant l'option parent
, vous pouvez crĂ©er une fenĂȘtre enfant:
const { BrowserWindow } = require('electron')
const top = new BrowserWindow()
const child = new BrowserWindow({ parent: top })
child.show()
top.show()
La fenĂȘtre child
sera toujours au dessus de la fenĂȘtre top
.
FenĂȘtres modalesâ
Une fenĂȘtre modale est une fenĂȘtre enfant qui dĂ©sactive la fenĂȘtre parente. Pour crĂ©er une fenĂȘtre modale , vous devez dĂ©finir les options parent
et modal
Ă la fois :
const { BrowserWindow } = require('electron')
const top = new BrowserWindow()
const child = new BrowserWindow({ parent: top, modal: true, show: false })
child.loadURL('https://github.com')
child.once('ready-to-show', () => {
child.show()
})
VisibilitĂ© de la pageâ
L'API Page Visibility fonctionne comme indiqué ci-dessous :
- Sur toutes les plateformes, l'Ă©tat de visibilitĂ© suit l'Ă©tat de la fenĂȘtre cachĂ©e/minimisĂ©e ou pas.
- De plus, sur macOS, l'Ă©tat de visibilitĂ© suit Ă©galement l'Ă©tat d'occlusion de la fenĂȘtre. Si la fenĂȘtre est occultĂ©e (c'est-Ă -dire entiĂšrement recouverte) par une autre fenĂȘtre, l'Ă©tat de visibilitĂ© sera
hidden
. Sur les autres plateformes, l'état de visibilité serahidden
seulement lorsque la fenĂȘtre est minimisĂ©e ou cachĂ©e explicitement avecwin.hide()
. - Si une
BrowserWindow
est crée avecshow:false
, l'état de visibilité initial seravisible
mĂȘme si la fenĂȘtre est cachĂ©e. - Si
backgroundThrottling
est désactivé, l'état de visibilité resteravisible
mĂȘme si la fenĂȘtre est minimisĂ©e, occultĂ©e ou cachĂ©e.
Il est recommandé de mettre en pause les opérations coûteuses lorsque l'état de visibilité est hidden
afin de minimiser la consommation d'énergie.
Avertissement sur les plateformesâ
- Sur macOS, les fenĂȘtres modales seront affichĂ©s comme des feuilles attachĂ©es Ă la fenĂȘtre parent.
- Sur macOS, la fenĂȘtre enfant va garder la position relative Ă la fenĂȘtre parent lorsque la fenĂȘtre parent bouge. Sur Windows et Linux, la fenĂȘtre enfant ne bougera pas.
- Sur Linux, le type des fenĂȘtre modales sera remplacĂ© par
dialog
. - Sur Linux, beaucoup d'environnements bureau ne peuvent pas cacher une fenĂȘtre modale.
Class: BrowserWindow extends BaseWindow
â
CrĂ©ation et gestion des fenĂȘtres navigateur.
Process: Main
BrowserWindow
est un EventEmitter.
Cela crée une nouvelle BrowserWindow
avec les propriétés natives définies par les options
.
[!WARNING] Electron's built-in classes cannot be subclassed in user code. For more information, see the FAQ.
new BrowserWindow([options])
â
ĂvĂ©nements dâinstanceâ
Les objets crées avec new BrowserWindow
émettent les évenements suivants :
[!NOTE] Some events are only available on specific operating systems and are labeled as such.
ĂvĂ©nement : 'page-title-updated'â
Retourne :
event
Eventtitle
stringexplicitSet
boolean
Ămis lorsque le document a changĂ© son titre, l'appel Ă event.preventDefault()
empĂȘchera le titre de la fenĂȘtre native de changer. explicitSet
est faux lorsque le titre est synthétisé à partir de l'URL du fichier.
ĂvĂ©nement : 'close'â
Retourne :
event
Event
Emis lorsque la fenĂȘtre va ĂȘtre fermĂ©e. L'Ă©mission intervient avant les Ă©vĂ©nements beforeunload
et unload
du DOM. L'appel Ă event.preventDefault()
annulera la fermeture.
Normalement, vous voudriez utiliser le gestionnaire beforeunload
pour dĂ©cider si une fenĂȘtre doit ĂȘtre fermĂ©e, celui ci sera Ă©galement appelĂ© lors du rechargement de la fenĂȘtre. Dans Electron, n'importe quelle valeur retournĂ©e autre que undefined
annulera la fermeture. Par exemple :
window.onbeforeunload = (e) => {
console.log('I do not want to be closed')
// Unlike usual browsers that a message box will be prompted to users, returning
// a non-void value will silently cancel the close.
// Il est recommandé d'utiliser l'API de dialogue afin de laisser l'utilisateur confirmer la fermeture de
// l'application.
e.returnValue = false
}
[!NOTE] There is a subtle difference between the behaviors of
window.onbeforeunload = handler
andwindow.addEventListener('beforeunload', handler)
. It is recommended to always set theevent.returnValue
explicitly, instead of only returning a value, as the former works more consistently within Electron.
ĂvĂ©nement : 'closed'â
Il est emis lorsque la fenĂȘtre est fermĂ©e. AprĂšs rĂ©ception de cet Ă©vĂ©nement, vous devrez supprimer la rĂ©fĂ©rence vers la fenĂȘtre et, bien sur, Ă©viter de la rĂ©-utiliser.
ĂvĂ©nement : 'query-session-end' Windowsâ
Retourne :
event
WindowSessionEndEvent
Emitted when a session is about to end due to a shutdown, machine restart, or user log-off. Calling event.preventDefault()
can delay the system shutdown, though itâs generally best to respect the userâs choice to end the session. However, you may choose to use it if ending the session puts the user at risk of losing data.
ĂvĂ©nement : 'session-end' Windowsâ
Retourne :
event
WindowSessionEndEvent
Emitted when a session is about to end due to a shutdown, machine restart, or user log-off. Once this event fires, there is no way to prevent the session from ending.
ĂvĂ©nement : 'unresponsive'â
Ămis lorsque la page web cesse de rĂ©pondre.
ĂvĂ©nement : 'responsive'â
Ămis lorsque la page web rĂ©pond Ă nouveau.
ĂvĂ©nement : 'blur'â
Ămis lorsque la fenĂȘtre perd le focus.
ĂvĂ©nement : 'focus'â
Ămis lorsque la fenĂȘtre obtient le focus.
ĂvĂ©nement : 'show'â
Ămis lorsque la fenĂȘtre est affichĂ©e.
ĂvĂ©nement : 'hide'â
Ămis lorsque la fenĂȘtre est masquĂ©e.
ĂvĂ©nement : 'ready-to-show'â
Ămis lorsque la page web Ă Ă©tĂ© chargĂ©e (tout en n'Ă©tait pas affichĂ©e) et la fenĂȘtre peut ĂȘtre affichĂ©e sans flash visuel.
Veuillez noter que l'utilisation de cet Ă©vĂ©nement implique que le moteur de rendu est prĂ©sumĂ© "visible" et rafraĂźchit, mĂȘme si show
est à false. Cet événement ne se déclenchera jamais si vous utilisez paintWhenInitiallyHidden: false
ĂvĂ©nement : 'maximize'â
Ămis lorsque la fenĂȘtre est agrandie.
ĂvĂ©nement : 'unmaximize'â
Ămis lorsque la fenĂȘtre quitte un Ă©tat maximisĂ©.
ĂvĂ©nement : 'minimize'â
Ămis lorsque la fenĂȘtre est rĂ©duite.
ĂvĂ©nement : 'restore'â
Ămis lorsque la fenĂȘtre est restaurĂ©e Ă partir dâun Ă©tat rĂ©duit.
ĂvĂ©nement : 'will-resize' macOS Windowsâ
Retourne :
event
EventnewBounds
Rectangle - Taille de la fenĂȘtre en cours de redimensionnage.- Objet
details
edge
(string) - Bord de la fenĂȘtre manipulĂ© pour redimensionner. Peut ĂȘtrebottom
,left
,right
,top-left
,top-right
,bottom-left
oubottom-right
.
Ămis avant que la fenĂȘtre ne soit redimensionnĂ©e. Lâappel Ă event.preventDefault()
empĂȘchera le redimensionnement de la fenĂȘtre.
Notez que cela n'est Ă©mis que lorsque la fenĂȘtre est redimensionnĂ©e manuellement. Le redimensionnement de la fenĂȘtre avec setBounds
/setSize
nâĂ©mettra pas cet Ă©vĂ©nement.
Les valeurs et comportements possibles de l'option edge
dépendent de la plateforme. Les valeurs possibles étant:
- Sous Windows, ces valeurs sont
bottom
,top
,left
,right
,top-left
,top-right
,bottom-left
,bottom-right
. - Sous macOS, les valeurs possibles ne sont
bottom
etright
.- La valeur
bottom
est utilisée pour indiquer un redimensionnement vertical. - La valeur
right
est utilisée pour indiquer un redimensionnement horizontal.
- La valeur
ĂvĂ©nement : 'resize'â
Ămis aprĂšs que la fenĂȘtre soit redimensionnĂ©e.
ĂvĂ©nement : 'resized' macOS Windowsâ
Ămis une fois que la fenĂȘtre a fini d'ĂȘtre redimensionnĂ©e.
Ceci est gĂ©nĂ©ralement Ă©mis lorsque la fenĂȘtre a Ă©tĂ© redimensionnĂ©e manuellement. Sur macOS, le redimensionnement de la fenĂȘtre avec setBounds
/setSize
et le réglage du paramÚtre animate
Ă true
émettra également cet événement une fois le redimensionnement terminé.
ĂvĂ©nement : 'will-move' macOS Windowsâ
Retourne :
event
EventnewBounds
Rectangle - Location the window is being moved to.
Ămis juste avant que la fenĂȘtre ne soit dĂ©placĂ©e. Sous Windows, l'appel Ă event.preventDefault()
empĂȘchera le dĂ©placement de la fenĂȘtre.
Notez bien qu'il ne sera Ă©mis que lorsque la fenĂȘtre est dĂ©placĂ©e manuellement. Donc un dĂ©placement de fenĂȘtre utilisant setPosition
/setBounds
/center
n'émettra pas cet événement.
ĂvĂ©nement : 'move'â
Ămis lorsque la fenĂȘtre est dĂ©placĂ©e vers une nouvelle position.
ĂvĂ©nement : 'moved' macOS Windowsâ
Ămis une fois lorsque la fenĂȘtre est dĂ©placĂ©e vers une nouvelle position.
[!NOTE] On macOS, this event is an alias of
move
.
ĂvĂ©nement : 'enter-full-screen'â
Ămis lorsque la fenĂȘtre passe Ă un Ă©tat de plein Ă©cran.
ĂvĂ©nement : 'leave-full-screen'â
Ămis lorsque la fenĂȘtre revient d'un Ă©tat de plein Ă©cran.
ĂvĂ©nement : 'enter-html-full-screen'â
Ămis lorsque la fenĂȘtre entre dans un Ă©tat de plein Ă©cran dĂ©clenchĂ©e par lâAPI HTML.
ĂvĂ©nement : 'leave-html-full-screen'â
Ămis lorsque la fenĂȘtre revient d'un Ă©tat de plein Ă©cran dĂ©clenchĂ©e par lâAPI HTML.
ĂvĂ©nement : 'always-on-top-changed'â
Retourne :
event
EventisAlwaysOnTop
boolean
Ămis lorsque la fenĂȘtre est dĂ©finie ou non dĂ©finie pour toujours afficher au dessus des autres fenĂȘtres.
ĂvĂ©nement : 'app-command' Windows Linuxâ
Retourne :
event
Eventcommand
string
Emitted when an App Command is invoked. Généralement lié aux touches multimédia du clavier ou aux commandes du navigateur, ainsi que le bouton "Retour" intégré à certaines souris sous Windows.
Les commandes sont en minuscules, les traits de soulignement sont remplacés par des traits d'union, et le préfixe APPCOMMAND_
est supprimé. par exemple APPCOMMAND_BROWSER_BACKWARD
est émis sous la forme browser-backward
.
const { BrowserWindow } = require('electron')
const win = new BrowserWindow()
win.on('app-command', (e, cmd) => {
// Navigate the window back when the user hits their mouse back button
if (cmd === 'browser-backward' && win.webContents.canGoBack()) {
win.webContents.goBack()
}
})
Les commandes d'application suivantes sont explicitement prises en charge sur Linux :
browser-backward
browser-forward
ĂvĂ©nement : 'swipe' macOSâ
Retourne :
event
Eventdirection
string
Ămis sur un balayage Ă 3 doigts. Possible directions are up
, right
, down
, left
.
La mĂ©thode sous-jacente Ă cet Ă©vĂ©nement est construite afin de pouvoir gĂ©rer les glissements sur trackpad selon le styles des 'anciens macOS, oĂč le contenu sur l'Ă©cran ne se dĂ©place pas avec le glissement. La plupart des trackpads sur macOS ne sont pas configurĂ©s pour continuer Ă permettre ce type de glissement donc pour que la prĂ©fĂ©rence 'Swipe between pages' dans System Preferences > Trackpad > More Gestures
doit ĂȘtre dĂ©finie Ă 'Swipe with two or three fingers'.
ĂvĂ©nement : 'rotate-gesture' macOSâ
Retourne :
event
Eventrotation
Float
Ămis lors du mouvement de rotation du trackpad. Ămission continue jusqu'Ă la fin du geste de rotation. La valeur rotation
sur chaque émission est l'angle en degrés tourné depuis la derniÚre émission. Le dernier événement émis lors d'un geste de rotation sera toujours de la valeur 0
. Les valeurs de rotation dans le sens inverse des aiguilles d'une montre sont positives, tandis que les valeurs dans le sens horaire sont négatives.
ĂvĂ©nement : 'sheet-begin' macOSâ
Ămis lorsque la fenĂȘtre ouvre une feuille.
ĂvĂ©nement : 'sheet-end' macOSâ
Ămis lorsque la fenĂȘtre a fermĂ© une feuille.
ĂvĂ©nement : 'new-window-for-tab' macOSâ
Ămis lorsque le bouton natif du nouvel onglet est cliquĂ©.
Event: 'system-context-menu' Windows Linuxâ
Retourne :
event
Eventpoint
Point - The screen coordinates where the context menu was triggered.
Ămis lorsque le menu contextuel du systĂšme est dĂ©clenchĂ© dans la fenĂȘtre, ceci est normalement uniquement dĂ©clenchĂ© lorsque l'utilisateur fait un clic droit sur la zone non-client de votre fenĂȘtre. Dans une fenĂȘtre sans bordure c'est la barre de titre de la fenĂȘtre ou n'importe quelle zone que vous avez dĂ©clarĂ© en tant que -webkit-app-region: drag
.
L'appel Ă event.preventDefault()
empĂȘchera l'affichage du menu.
To convert point
to DIP, use screen.screenToDipPoint(point)
.
MĂ©thodes statiquesâ
La classe BrowserWindow
dispose des méthodes statiques suivantes :
BrowserWindow.getAllWindows()
â
Retourne BrowserWindow[]
- Un tableau de toutes les fenĂȘtres ouvertes.
BrowserWindow.getFocusedWindow()
â
Retourne BrowserWindow | null
- FenĂȘtre ayant le focus dans cette application, sinon retourne null
.
BrowserWindow.fromWebContents(webContents)
â
webContents
WebContents
Retourne BrowserWindow | null
- FenĂȘtre propriĂ©taire du webContents
ou null
si celui-ci n'est possĂ©dĂ© par aucune fenĂȘtre.
BrowserWindow.fromBrowserView(browserView)
__ obsolĂšteâ
browserView
BrowserView
[!NOTE] The
BrowserView
class is deprecated, and replaced by the newWebContentsView
class.
Retourne BrowserWindow | null
- FenĂȘtre possĂšdant la browserView
. Retournera null
. si la vue n'est attachĂ©e Ă aucune fenĂȘtre.
BrowserWindow.fromId(id)
â
id
Integer
Retourne BrowserWindow | null
- La fenĂȘtre avec l'id
donné.
PropriĂ©tĂ©s d'instanceâ
Les objets créés avec new BrowserWindow
ont les propriétés suivantes :
const { BrowserWindow } = require('electron')
// Dans cet exemple `win` est notre instance
const win = new BrowserWindow({ width: 800, height: 600 })
win.loadURL('https://github.com')
win.webContents
Readonlyâ
Objet WebContents
possĂšdĂ© par cette fenĂȘtre. Tous les Ă©vĂ©nements liĂ©s Ă la page web et les opĂ©rations se feront par son intermĂ©diaire.
See the webContents
documentation for its methods and events.
win.id
Readonlyâ
Propriété de type Integer
reprĂ©sentant l'ID unique de la fenĂȘtre. Chaque ID est unique parmi tout ceux des instances de BrowserWindow
de l'application Electron.
win.tabbingIdentifier
macOS Readonlyâ
Propriété de type string
(facultative) égale au tabbingIdentifier
transmise au constructeur de BrowserWindow
ou undefined
si aucune nâa Ă©tĂ© dĂ©finie.
win.autoHideMenuBar
Linux Windowsâ
Propriété de type boolean
qui dĂ©termine si la barre de menu de la fenĂȘtre doit se cacher automatiquement. Une fois dĂ©finie, la barre de menu ne s'affichera que lorsque les utilisateurs appuient sur la touche Alt
seule.
Si la barre de menu est déjà visible, l'assignation à true
de cette propriĂ©tĂ© ne cachera pas immĂ©diatement la fenĂȘtre.
win.simpleFullScreen
â
Propriété de type boolean
dĂ©terminant si la fenĂȘtre est en mode plein Ă©cran simple (prĂ©-Lion).
win.fullScreen
â
Propriété de type boolean
dĂ©terminant si la fenĂȘtre est en mode plein Ă©cran.
win.focusable
Windows macOSâ
Propriété de type boolean
dĂ©terminant si cette fenĂȘtre peut prendre le focus.
win.visibleOnAllWorkspaces
macOS Linuxâ
Propriété de type boolean
dĂ©terminant si la fenĂȘtre est visible sur tous les espaces de travail.
[!NOTE] Always returns false on Windows.
win.shadow
â
Propriété de type boolean
dĂ©terminant si la fenĂȘtre est ombrĂ©e.
win.menuBarVisible
Windows Linuxâ
Propriété de type boolean
dĂ©terminant si la barre de menu doit ĂȘtre visible.
[!NOTE] If the menu bar is auto-hide, users can still bring up the menu bar by pressing the single
Alt
key.
win.kiosk
â
Propriété de type boolean
dĂ©terminant si la fenĂȘtre est en mode kiosque.
win.documentEdited
macOSâ
Propriété de type boolean
indiquant si le document de la fenĂȘtre a Ă©tĂ© modifiĂ©.
Lorsque sa valeur est Ă true
l'icÎne dans la barre de titre devient grisée.
win.representedFilename
macOSâ
Propriété de type string
qui dĂ©termine le chemin d'accĂšs du fichier que la fenĂȘtre reprĂ©sente, l'icĂŽne du fichier s'affichera dans la barre de titre de la fenĂȘtre.
win.title
â
Propriété de type string
dĂ©terminant le titre de la fenĂȘtre native.
[!NOTE] The title of the web page can be different from the title of the native window.
win.minimizable
macOS Windowsâ
Propriété de type boolean
dĂ©terminant si la fenĂȘtre peut ĂȘtre minimisĂ©e manuellement par l'utilisateur.
Sur Linux, le setter est un no-op, bien que le getter retourne true
.
win.maximizable
macOS Windowsâ
Propriété de type boolean
dĂ©terminant si la fenĂȘtre peut ĂȘtre agrandie manuellement par l'utilisateur.
Sur Linux, le setter est un no-op, bien que le getter retourne true
.
win.fullScreenable
â
Propriété de type boolean
dĂ©terminant si le bouton maximiser/zoom de la fenĂȘtre active le mode plein Ă©cran ou maximise la fenĂȘtre.
win.resizable
â
Propriété de type boolean
dĂ©terminant si la fenĂȘtre peut ĂȘtre redimensionnĂ©e manuellement par l'utilisateur.
win.closable
macOS Windowsâ
Propriété de type boolean
dĂ©terminant si la fenĂȘtre peut ĂȘtre fermĂ©e manuellement par l'utilisateur.
Sur Linux, le setter est un no-op, bien que le getter retourne true
.
win.movable
macOS Windowsâ
Propriété de type boolean
dĂ©terminant si la fenĂȘtre peut ĂȘtre dĂ©placĂ©e par l'utilisateur.
Sur Linux, le setter est un no-op, bien que le getter retourne true
.
win.excludedFromShownWindowsMenu
macOSâ
Propriété de type boolean
dĂ©terminant si la fenĂȘtre est exclue du menu Windows de l'application. false
par défaut.
const win = new BrowserWindow({ height: 600, width: 600 })
const template = [
{
role: 'windowmenu'
}
]
gagne. xcludedFromShownWindowsMenu = true
const menu = Menu.buildFromTemplate(template)
Menu.setApplicationMenu(menu)
win.accessibleTitle
â
Propriété de type string
définissant un titre alternatif fourni uniquement aux outils d'accessibilité tels que les lecteurs d'écran. Cette chaßne n'est pas directement visible par les utilisateurs.
win.snapped
Windows Readonlyâ
A boolean
property that indicates whether the window is arranged via Snap.
MĂ©thodes dâinstanceâ
Les objets créés avec new BrowserWindow
disposent des méthodes d'instance suivantes :
[!NOTE] Some methods are only available on specific operating systems and are labeled as such.
win.destroy()
â
Force la fermeture de la fenĂȘtre, les Ă©vĂ©nement unload
et beforeunload
ne seront pas émis pour la page web ainsi que l'évÚnement close
qui ne sera pas non plus Ă©mis pour cette fenĂȘtre, mais l'Ă©vĂ©nement closed
est garantit d'ĂȘtre Ă©mis.
win.close()
â
Essaye de fermer la fenĂȘtre. Ceci a le mĂȘme effet qu'un utilisateur cliquant manuellement sur le bouton de fermeture de la fenĂȘtre. La page Web, elle, peut cependant annuler la fermeture. Voir l'Ă©vĂ©nement close event.
win.focus()
â
RamĂšne la fenĂȘtre au premier plan.
win.blur()
â
Supprime le focus de la fenĂȘtre.
win.isFocused()
â
Retourne un boolean
qui indique si la fenĂȘtre a le focus.
win.isDestroyed()
â
Retourne un boolean
qui indique si la fenĂȘtre est dĂ©truite.
win.show()
â
Affiche la fenĂȘtre et la ramĂšne au premier plan.
win.showInactive()
â
Affiche la fenĂȘtre, mais ne la ramĂšne pas au premier plan.
win.hide()
â
Masque la fenĂȘtre.
win.isVisible()
â
Retourne un boolean
qui indique si la fenĂȘtre est visible par l'utilisateur au premier plan de l'application.
win.isModal()
â
Retourne boolean
- Indique si la fenĂȘtre actuelle est une fenĂȘtre modale ou non.
win.maximize()
â
Maximise la fenĂȘtre. Cela affichera Ă©galement la fenĂȘtre (mais sans lui donner le focus) si elle n'est pas dĂ©jĂ affichĂ©e.
win.unmaximize()
â
RĂ©duit la fenĂȘtre Ă sa taille initiale.
win.isMaximized()
â
Retourne boolean
- Indique si la taille de la fenĂȘtre est maximisĂ©e ou non.
win.minimize()
â
Minimise la fenĂȘtre Sur certaines plates-formes, la fenĂȘtre rĂ©duite sera affichĂ©e dans le Dock.
win.restore()
â
Restaure la fenĂȘtre depuis l'Ă©tat rĂ©duit Ă son Ă©tat prĂ©cĂ©dent.
win.isMinimized()
â
Retourne boolean
- Indique si la fenĂȘtre est minimisĂ©e.
win.setFullScreen(flag)
â
flag
boolean
DĂ©finit si la fenĂȘtre doit ĂȘtre en mode plein Ă©cran.
[!NOTE] On macOS, fullscreen transitions take place asynchronously. Donc si d'autres actions dépendent de l'état plein écran, vous devrez utiliser les événements 'enter-full-screen' ou 'Lave-full-screen'.
win.isFullScreen()
â
Retourne boolean
- Indique si la fenĂȘtre est en plein Ă©cran ou non.
[!NOTE] On macOS, fullscreen transitions take place asynchronously. Lorsque vous demandez le statut plein écran d'une BrowserWindow, vous devez vous assurer que les événements 'enter-full-screen' ou 'leave-full-screen' ont été émis.
win.setSimpleFullScreen(flag)
macOSâ
flag
boolean
Entre ou sort du mode plein-écran simple.
Le mode plein-écran simple émule le comportement en plein-écran natif trouvé sur les versions de Mac OS X antérieures à Lion (10.7).
win.isSimpleFullScreen()
macOSâ
Retourne boolean
- Indique si la fenĂȘtre est en mode plein-Ă©cran simple (prĂ©-Lion) ou non.
win.isNormal()
â
Retourne boolean
- Indique si la fenĂȘtre est dans son Ă©tat normal (ni maximisĂ©e, ni minimisĂ©e, ni en plein Ă©cran).
win.setAspectRatio(aspectRatio[, extraSize])
â
aspectRatio
Float - L'aspect ratio Ă maintenir pour une partie de la vue de contenu .extraSize
Size (facultatif) macOS - Taille supplémentaire à ne pas inclure lors du maintien du rapport d'aspect.
Fera que la fenĂȘtre maintiendra un certain rapport hauteur/largeur. La taille supplĂ©mentaire permet Ă un dĂ©veloppeur d'avoir de l'espace, spĂ©cifiĂ© en pixels, non inclus dans les calculs de ratio de l'aspect. Cette API prend dĂ©jĂ en compte la diffĂ©rence entre la taille d'une fenĂȘtre et la taille de son contenu.
ConsidĂ©rons une fenĂȘtre normale avec un lecteur vidĂ©o HD et des commandes associĂ©es. Il y a peut-ĂȘtre 15 pixels de contrĂŽles sur le bord gauche, 25 pixels de contrĂŽles sur le bord droit et 50 pixels de contrĂŽles sous le lecteur. In order to maintain a 16:9 aspect ratio (standard aspect ratio for HD @1920x1080) within the player itself we would call this function with arguments of 16/9 and { width: 40, height: 50 }. Le deuxiĂšme argument n'a pas d'importance tant que les largeur et hauteur supplĂ©mentaires restent dans les limites de la vue du contenu. On ajoutera toute largeur supplĂ©mentaire et les zones de hauteur que vous avez dans la vue de contenu globale.
Le ratio hauteur/largeur n'est pas respectĂ© lorsque la fenĂȘtre est redimensionnĂ©e par programme avec des APIs comme win.setSize
.
Pour réinitialiser un rapport d'aspect, passez 0 comme valeur d'aspectRatio
Ă : win.setAspectRatio(0)
.
win.setBackgroundColor(backgroundColor)
â
backgroundColor
string - Couleur en Hex, RGB, ARGB, HSL, HSLA ou une couleur CSS nommée. Le canal alpha est facultatif pour le type hexadécimal.
Exemples de valeurs valides pour backgroundColor
:
- Hex
- #fff (RVB raccourci)
- #ffff (ARGB raccourci )
- #ffffff (RGB)
- #ffffffff (ARGB)
- RGB
rgb\(([\d]+),\s*([\d]+),\s*([\d]+)\)
- e.g. rgb(255, 255, 255)
- RGBA
rgba\(([\d]+),\s*([\d]+),\s*([\d]+),\s*([\d.]+)\)
- e.g. rgba(255, 255, 255, 1.0)
- HSL
hsl\((-?[\d.]+),\s*([\d.]+)%,\s*([\d.]+)%\)
- e.g. hsl(200, 20%, 50%)
- HSLA
hsla\((-?[\d.]+),\s*([\d.]+)%,\s*([\d.]+)%,\s*([\d.]+)\)
- e.g. hsla(200, 20%, 50%, 0.5)
- Couleur nommée
- Les options sont listées dans SkParseColor.cpp
- Similaire aux mots-clés de CSS Color Module Level 3, mais sensible à la casse.
- e.g.
blueviolet
orred
- e.g.
DĂ©finit la couleur de l'arriĂšre-plan de la fenĂȘtre. See Setting backgroundColor
.
win.previewFile(path[, displayName])
macOSâ
path
string - Le chemin absolu vers le fichier à prévisualiser avec QuickLook. Ceci est important car Quick Look utilise le nom de fichier et l'extension de fichier sur le chemin pour déterminer le type de contenu du fichier à ouvrir.displayName
string (facultatif) - Le nom du fichier à afficher dans la vue modale de Quick Look . Ceci est purement visuel et n'affecte pas le type de contenu du fichier. Par défaut,chemin
.
Uses Quick Look to preview a file at a given path.
win.closeFilePreview()
macOSâ
Closes the currently open Quick Look panel.
win.setBounds(bounds[, animate])
â
bounds
Partial<Rectangle>animate
boolean (facultatif) macOS
Redimensionne et dĂ©place la fenĂȘtre vers les limites fournies. Toutes les propriĂ©tĂ©s qui ne sont pas fournies seront par dĂ©faut Ă leurs valeurs actuelles.
const { BrowserWindow } = require('electron')
const win = new BrowserWindow()
// définit toutes les propriétés limites
gagner. etBounds({ x: 440, y: 225, width: 800, height: 600 })
// a fixé une propriété de simples limites
gagner. etBounds({ width: 100 })
// { x: 440, y: 225, width: 100, height: 600 }
console.log(win.getBounds())
[!NOTE] On macOS, the y-coordinate value cannot be smaller than the Tray height. La hauteur du tray a changĂ© au fil du temps et dĂ©pend du systĂšme d'exploitation, mais elle est comprise entre 20 et 40 px. Passer une valeur infĂ©rieure Ă la hauteur du tray rĂ©sultera en une fenĂȘtre supprimĂ©e du tray.
win.getBounds()
â
Returns Rectangle - The bounds
of the window as Object
.
[!NOTE] On macOS, the y-coordinate value returned will be at minimum the Tray height. Par exemple, appeler
win.setBounds({ x: 25, y: 20, width: 800, height: 600 })
avec une hauteur de tray de 38 signifie quewin.getBounds()
retournera{ x: 25, y: 38, width: 800, height: 600 }
.
win.getBackgroundColor()
â
Retourne string
- Indique la couleur d'arriĂšre-plan de la fenĂȘtre au format hexadĂ©cimal (#RRGGBB
).
[!NOTE] The alpha value is not returned alongside the red, green, and blue values.
win.setContentBounds(bounds[, animate])
â
bounds
Rectangleanimate
boolean (facultatif) macOS
Redimensionne et dĂ©place la zone client de la fenĂȘtre (par exemple la page web) vers les limites fournies.
win.getContentBounds()
â
Returns Rectangle - The bounds
of the window's client area as Object
.
win.getNormalBounds()
â
Returns Rectangle - Contains the window bounds of the normal state
[!NOTE] Whatever the current state of the window (maximized, minimized or in fullscreen), this function always returns the position and size of the window in normal state. In normal state,
getBounds
andgetNormalBounds
return the same Rectangle.
win.setEnabled(enable)
â
enable
boolean
Active ou dĂ©sactive la fenĂȘtre.
win.isEnabled()
â
Retourne boolean
- Indique si la fenĂȘtre est activĂ©e.
win.setSize(width, height[, animate])
â
width
Integerheight
Integeranimate
boolean (facultatif) macOS
Redimensionne la fenĂȘtre Ă width
x height
. Si la largeur width
ou la hauteur height
sont infĂ©rieures aux minima dĂ©finis, la fenĂȘtre se limitera Ă sa taille minimale.
win.getSize()
â
Retourne Integer[]
- Contient la largeur et la hauteur de la fenĂȘtre.
win.setContentSize(width, height[, animate])
â
width
Integerheight
Integeranimate
boolean (facultatif) macOS
Redimensionne la zone client de la fenĂȘtre (par exemple la page web) Ă largeur
et hauteur
.
win.getContentSize()
â
Retourne Integer[]
- Tableau contenant la largeur et la hauteur de la zone client de la fenĂȘtre.
win.setMinimumSize(width, height)
â
width
Integerheight
Integer
DĂ©finit la taille minimale de la fenĂȘtre Ă width
et height
.
win.getMinimumSize()
â
Retourne Integer[]
- Contient la largeur et la hauteur minimale de la fenĂȘtre.
win.setMaximumSize(width, height)
â
width
Integerheight
Integer
DĂ©finit la taille maximale de la fenĂȘtre Ă width
et height
.
win.getMaximumSize()
â
Retourne Integer[]
- Contient la largeur et la hauteur maximale de la fenĂȘtre.
win.setResizable(resizable)
â
resizable
boolean
DĂ©finit si la fenĂȘtre peut ĂȘtre redimensionnĂ©e ou pas par lâutilisateur.
win.isResizable()
â
Retourne boolean
- Indique si la fenĂȘtre peut ĂȘtre redimensionnĂ©e manuellement par l'utilisateur.
win.setMovable(movable)
macOS Windowsâ
movable
boolean
DĂ©finit si la fenĂȘtre peut ĂȘtre dĂ©placĂ©e par lâutilisateur. N'a aucun effet sous Linux.
win.isMovable()
macOS Windowsâ
Retourne boolean
- Indique si la fenĂȘtre peut ĂȘtre dĂ©placĂ©e par l'utilisateur.
Sous Linux, retourne toujours true
.
win.setMinimizable(minimizable)
macOS Windowsâ
minimizable
boolean
DĂ©finit si la fenĂȘtre peut ĂȘtre minimisĂ©e par lâutilisateur. N'a aucun effet sous Linux.
win.isMinimizable()
macOS Windowsâ
Retourne boolean
- Indique si la fenĂȘtre peut ĂȘtre minimisĂ©e par l'utilisateur.
Sous Linux, retourne toujours true
.
win.setMaximizable(maximizable)
macOS Windowsâ
maximizable
boolean
DĂ©finit si la fenĂȘtre peut ĂȘtre maximalisĂ©e par lâutilisateur. N'a aucun effet sous Linux.
win.isMaximizable()
macOS Windowsâ
Retourne boolean
- Indique si la fenĂȘtre peut ĂȘtre maximalisĂ©e manuellement par l'utilisateur.
Sous Linux, retourne toujours true
.
win.setFullScreenable(fullscreenable)
â
fullscreenable
boolean
DĂ©finit si le bouton agrandir/zoom de la fenĂȘtre active/dĂ©sactive le mode plein Ă©cran ou agrandit la fenĂȘtre.
win.isFullScreenable()
â
Retourne boolean
- Indique si le bouton agrandir/zoom de la fenĂȘtre fait basculer en mode plein Ă©cran ou agrandit la fenĂȘtre.
win.setClosable(closable)
macOS Windowsâ
closable
boolean
DĂ©finit si la fenĂȘtre peut ĂȘtre fermĂ©e manuellement par l'utilisateur. N'a aucun effet sous Linux.
win.isClosable()
macOS Windowsâ
Retourne boolean
- Indique si la fenĂȘtre peut ĂȘtre fermĂ©e manuellement par l'utilisateur.
Sous Linux, retourne toujours true
.
win.setHiddenInMissionControl(hidden)
macOSâ
hidden
boolean
DĂ©finit si la fenĂȘtre sera masquĂ©e lorsque l'utilisateur uitilise Mission Control.
win.isHiddenInMissionControl()
macOSâ
Retourne boolean
- Indique si la fenĂȘtre sera masquĂ©e lorsque l'utilisateur utilise Mission Control.
win.setAlwaysOnTop(flag[, level][, relativeLevel])
â
flag
booleanlevel
string (facultatif) macOS Windows - Les valeurs possibles sontnormal
,floating
,torn-off-menu
,modal-panel
,main-menu
,status
,pop-up-menu
,screen-saver
, et ~dock
~~ (déprécié). La valeur par défaut estfloating
lorsqueflag
est vrai. Leniveau
est rĂ©initialisĂ© Ănormal
lorsque le drapeau est faux. Notez que deflottant
Ăstatut
inclus, la fenĂȘtre est placĂ©e sous le Dock sur macOS et sous la barre des tĂąches sous Windows. Depop-up-menu
à une valeur supérieure, il est affiché au-dessus du Dock sur macOS et au-dessus de la barre des tùches sur Windows. Voir la documentation macOS pour plus de détails.relativeLevel
Integer (facultatif) macOS - Le nombre de calques supĂ©rieurs Ă dĂ©finir pour cette fenĂȘtre par rapport aulevel
donné. Par défaut,0
. Notez qu'Apple décourage les réglages de niveau supérieur à 1 au-dessus descreen-saver
.
DĂ©finit si la fenĂȘtre doit toujours s'afficher au-dessus des autres fenĂȘtres. AprĂšs ĂȘtre dĂ©finie comme telle, la fenĂȘtre est toujours une fenĂȘtre normale et non pas une fenĂȘtre d'outils ne pouvant pas prendre le focus.
win.isAlwaysOnTop()
â
Retourne boolean
- Indique si la fenĂȘtre est toujours au-dessus des autres fenĂȘtres ou pas.
win.moveAbove(mediaSourceId)
â
mediaSourceId
string - Id de la fenĂȘtre au format de l'id DesktopCapturerSource. Par exemple "window:1869:0".
DĂ©place la fenĂȘtre au-dessus de la fenĂȘtre source dans l'ordre du z-order. Si le mediaSourceId
n'est pas du type window ou si la fenĂȘtre n'existe pas, alors cette mĂ©thode lance une erreur.
win.moveTop()
â
DĂ©place la fenĂȘtre sur le dessus (dans l'ordre z) peu importe qu'elle ait le focus ou non
win.center()
â
DĂ©place la fenĂȘtre vers le centre de lâĂ©cran.
win.setPosition(x, y[, animate])
â
x
Integery
Integeranimate
boolean (facultatif) macOS
Moves window to x
and y
.
win.getPosition()
â
Retourne Integer[]
- Contient la position actuelle de la fenĂȘtre.
win.setTitle(title)
â
title
string
Remplace le titre de la fenĂȘtre native par title
.
win.getTitle()
â
Retourne string
- Titre de la fenĂȘtre native.
[!NOTE] The title of the web page can be different from the title of the native window.
win.setSheetOffset(offsetY[, offsetX])
macOSâ
offsetY
FloatoffsetX
Float (facultatif)
Modifie le point d'attachement des feuilles sur macOS. Par dĂ©faut, les feuilles sont attachĂ©es juste sous le cadre de la fenĂȘtre, mais vous pouvez les afficher sous une barre d'outils affichĂ©e. Par exemple :
const { BrowserWindow } = require('electron')
const win = new BrowserWindow()
const toolbarRect = document.getElementById('toolbar').getBoundingClientRect()
win.setSheetOffset(toolbarRect.height)
win.flashFrame(flag)
â
History
Version(s) | Changes |
---|---|
None |
|
flag
boolean
DĂ©marre ou arrĂȘte de faire clignoter la fenĂȘtre pour attirer l'attention de l'utilisateur.
win.setSkipTaskbar(skip)
macOS Windowsâ
skip
boolean
Fait que la fenĂȘtre ne soit pas affichĂ©e dans la barre des tĂąches.
win.setKiosk(flag)
â
flag
boolean
Entre ou sort du mode kiosque.
win.isKiosk()
â
Retourne boolean
- Indique si la fenĂȘtre est en mode kiosque.
win.isTabletMode()
Windowsâ
Retourne boolean
- Indique si la fenĂȘtre est en mode Windows 10 tablet.
Since Windows 10 users can use their PC as tablet, under this mode apps can choose to optimize their UI for tablets, such as enlarging the titlebar and hiding titlebar buttons.
Le retour de cette API indique si la fenĂȘtre est en mode tablette, et l'Ă©vĂ©nement resize
pourra dans ce cas ĂȘtre utilisĂ© pour Ă©couter les changements en mode tablette.
win.getMediaSourceId()
â
Retourne string
- Id de fenĂȘtre au format des id de DesktopCapturerSource. Par exemple "window:1324:0".
Plus précisément, le format est window:id:other_id
oĂč id
correspond au HWND
sur Windows, et au CGWindowID
(uint64_t
) sur macOS et Window
(unsigned long
) sur Linux. other_id
est utilisĂ© pour identifier le contenu web (onglets) donc dans la mĂȘme fenĂȘtre de niveau supĂ©rieur.
win.getNativeWindowHandle()
â
Retourne Buffer
- Le handle spĂ©cifique Ă la plate-forme de la fenĂȘtre.
Le type natif du handle est HWND
sous Windows, NSView*
sur macOS, et Window
(unsigned long
) sous Linux.
win.hookWindowMessage(message, callback)
Windowsâ
message
Integercallback
FunctionwParam
any - LewParam
qui a été fourni au WndProclParam
any - LelParam
qui a été fourni au WndProc
Accroche un message de fenĂȘtre. La callback
est appelée lorsque le message est reçu dans le WndProc.
win.isWindowMessageHooked(message)
Windowsâ
message
Integer
Retourne boolean
- true
ou false
selon que le message est connecté.
win.unhookWindowMessage(message)
Windowsâ
message
Integer
DĂ©croche le message de fenĂȘtre.
win.unhookAllWindowMessages()
Windowsâ
DĂ©croche tous les messages de fenĂȘtre.
win.setRepresentedFilename(filename)
macOSâ
filename
string
DĂ©finit le chemin d'accĂšs du fichier que la fenĂȘtre reprĂ©sente, et l'icĂŽne du fichier s'affichera dans la barre de titre de la fenĂȘtre.
win.getRepresentedFilename()
macOSâ
Retourne string
- Le chemin du fichier que la fenĂȘtre reprĂ©sente.
win.setDocumentEdited(edited)
macOSâ
edited
boolean
SpĂ©cifie si le document de la fenĂȘtre a Ă©tĂ© modifiĂ©, et l'icĂŽne de la barre de titre deviendra grisĂ© lorsque la valeur est Ă true
.
win.isDocumentEdited()
macOSâ
Retourne boolean
- Indique si le document de la fenĂȘtre a Ă©tĂ© modifiĂ©.
win.focusOnWebView()
â
win.blurWebView()
â
win.capturePage([rect, opts])
â
rect
Rectangle (optional) - The bounds to captureopts
Object (facultatif)stayHidden
boolean (facultatif) - Maintient la page cachée au lieu de visible. Par défaut la valeur estfalse
.stayAwake
boolean (facultatif) - Maintient le systÚme hors veille. Par défaut la valeur estfalse
.
Retourne Promise<NativeImage>
- résout avec une NativeImage
Capture un instantané de la zone de la page définie par rect
. Une capture de la page entiÚre sera réalisée en l'absence de rect
. Si la page n'est pas visible, rect
peut ĂȘtre vide. La page est considĂ©rĂ©e visible lorsque sa BrowserWindow est cachĂ©e et que le nombre de captations n'est pas nul. Si vous souhaitez que la page reste cachĂ©e, vous devez vous assurer que stayHidden
soit bien défini à true.
win.loadURL(url[, options])
â
url
string
Retourne Promise<void>
- la promesse se résoudra lorsque la page aura terminé le chargement (voir did-finish-load
), et rejette si la page ne parvient pas Ă se charger (voir did-fail-load
).
Same as webContents.loadURL(url[, options])
.
L'url
peut ĂȘtre une adresse distante (par exemple http://
) ou un chemin vers un fichier HTML local en utilisant le protocole file://
.
To ensure that file URLs are properly formatted, it is recommended to use Node's url.format
method:
const { BrowserWindow } = require('electron')
const win = new BrowserWindow()
const url = require('node:url').format({
protocol: 'file',
slashes: true,
pathname: require('node:path').join(__dirname, 'index.html')
})
win.loadURL(url)
Vous pouvez charger une URL en utilisant une requĂȘte POST
avec des données encodées par URL en faisant ce qui suit :
const { BrowserWindow } = require('electron')
const win = new BrowserWindow()
win.loadURL('http://localhost:8000/post', {
postData: [{
type: 'rawData',
bytes: Buffer.from('hello=world')
}],
extraHeaders: 'Content-Type: application/x-www-form-urlencoded'
})
win.loadFile(filePath[, options])
â
filePath
string
Retourne Promise<void>
- la promesse se résoudra lorsque la page aura terminé le chargement (voir did-finish-load
), et rejette si la page ne parvient pas Ă se charger (voir did-fail-load
).
Comme pour webContents.loadFile
, filePath
doit ĂȘtre un chemin relatif Ă la racine de votre application et pointant vers un fichier HTML. Voir la documentation de webContents
pour plus d'informations.
win.reload()
â
Identique Ă webContents.reload
.
win.setMenu(menu)
Linux Windowsâ
menu
Menu | null
Définit menu
comme barre de menu de la fenĂȘtre.
win.removeMenu()
Linux Windowsâ
Retire la barre de menu de la fenĂȘtre.
win.setProgressBar(progress[, options])
â
progress
Double
Définit la valeur de progression dans la barre de progression. La plage valide est [0, 1.0].
Supprime la barre de progression lorsque progress est < 0 ; Et Passe en mode indéterminé lorsque progress > 1.
Sur la plate-forme Linux, ne prend en charge que l'environnement de bureau Unity, vous devez spécifier le nom du fichier *.desktop
pour le champ desktopName
de package.json
. Par défaut, {app.name}.desktop
sera assumé.
Sous Windows, un mode peut ĂȘtre fournit. Accepted values are none
, normal
, indeterminate
, error
, and paused
. Si vous appelez setProgressBar
sans avoir défini de mode (mais avec une valeur dans la plage valide), normal
sera utilisé.
win.setOverlayIcon(overlay, description)
Windowsâ
overlay
NativeImage | null - the icon to display on the bottom right corner of the taskbar icon. Si ce paramĂštre estnull
, l'overlay est effacédescription
chaßne - une description qui sera fournie aux lecteurs d'écran d'accessibilité
Définit un overlay de 16 x 16 pixels sur l'icÎne actuelle de la barre des tùches, ceci est généralement utilisé pour transmettre une sorte de statut d'application ou pour notifier passivement l'utilisateur.
win.invalidateShadow()
macOSâ
Invalide lâombre de fenĂȘtre afin quâelle soit recalculĂ©e en fonction de la forme de fenĂȘtre actuelle.
Les BrowserWindows
transparentes peuvent parfois laisser des artefacts visuels sur macOS. Cette mĂ©thode peut ĂȘtre utilisĂ©e pour effacer ces artefacts lorsque, par exemple, une animation est rĂ©alisĂ©e.
win.setHasShadow(hasShadow)
â
hasShadow
boolean
DĂ©finit si la fenĂȘtre doit ĂȘtre ombrĂ©e ou non.
win.hasShadow()
â
Retourne boolean
- Indique si la fenĂȘtre est ombrĂ©e.
win.setOpacity(opacity)
Windows macOSâ
opacité
nombre - entre 0.0 (entiĂšrement transparent) et 1.0 (entiĂšrement opaque)
DĂ©finit l'opacitĂ© de la fenĂȘtre. N'a aucun effet sous Linux. Les valeurs hors de limite sont restreintes dans la plage [0, 1].
win.getOpacity()
â
Retourne number
- entre 0.0 (entiĂšrement transparent) et 1.0 (entiĂšrement opaque). Sur Linux, renvoie toujours 1.
win.setShape(rects)
Windows Linux Experimentalâ
rects
Rectangle[] - Sets a shape on the window. Le passage d'une liste vide fait revenir la fenĂȘtre Ă la forme rectangulaire.
DĂ©finir une forme de fenĂȘtre dĂ©termine la zone dans la fenĂȘtre oĂč le systĂšme permet de dessiner et d'interagir avec l'utilisateur. En dehors de la rĂ©gion donnĂ©e, aucun pixel ne sera dessinĂ© et aucun Ă©vĂ©nement de souris ne sera enregistrĂ©. Les Ă©vĂ©nements de souris en dehors de la rĂ©gion ne seront pas reçus par cette fenĂȘtre, mais seront transmis Ă tout ce qui se trouve derriĂšre la fenĂȘtre.
win.setThumbarButtons(buttons)
Windowsâ
buttons
ThumbarButton[]
Retourne boolean
- Indique si les boutons ont été ajoutés avec succÚs
Ajouter une barre d'outils miniature avec un ensemble de boutons spĂ©cifiĂ© Ă l'image de miniature d'une fenĂȘtre dans la disposition d'un bouton de la barre des tĂąches. Retourne boolean
- Indique si l'a miniature a été ajoutée avec succÚs.
Le nombre de boutons dans la barre d'outils miniature ne doit pas dĂ©passer 7 en raison de l'espace limitĂ© disponible. Une fois que vous avez configurĂ© la barre d'outils miniature, la barre d'outils ne peut pas ĂȘtre retirĂ©e en raison de limitation de la plateforme. Mais vous pouvez appeler l'API avec un tableau vide pour supprimer les boutons.
buttons
est un tableau d'objets de type Button
:
- Object
Button
icon
NativeImage - The icon showing in thumbnail toolbar.click
Functiontooltip
string (facultatif) - Le texte dans l'info-bulle du bouton.flags
string[] (facultatif) - ContrÎle les états et comportements spécifiques du bouton. Par défaut, il est['activé']
.
Le flags
est un tableau pouvant inclure ces string
s suivant :
enabled
- Le bouton est actif et disponible à l'utilisateur.désactivé
- Le bouton est désactivé. Il est présent, mais a un état visuel indiquant qu'il ne répondra pas à l'action de l'utilisateur.dismissonclick
- Lorsque le bouton est cliquĂ©, la fenĂȘtre de miniature se ferme immĂ©diatement.nobackground
- Utilise uniquement l'image et ne dessine pas de bordure sur le bouton.hidden
- Le bouton n'est pas affiché à l'utilisateur.non interactif
- Le bouton est activĂ© mais non interactif ; aucun Ă©tat de bouton n'est dessinĂ©. Cette valeur est destinĂ©e aux cas oĂč le bouton est utilisĂ© dans une notification.
win.setThumbnailClip(region)
Windowsâ
region
Rectangle - Region of the window
DĂ©finit la rĂ©gion de la fenĂȘtre Ă afficher comme image de miniature affichĂ©e lors du survol de la fenĂȘtre dans la barre des tĂąches. Vous pouvez rĂ©initialiser la miniature afin qu'elle occupe toute la fenĂȘtre en spĂ©cifiant une rĂ©gion vide : { x: 0, y: 0, width: 0, height: 0 }
.
win.setThumbnailToolTip(toolTip)
Windowsâ
toolTip
string
DĂ©finit l'infobulle qui s'affiche en survolant la vignette de la fenĂȘtre dans la barre des tĂąches.
win.setAppDetails(options)
Windowsâ
- Objet
options
appId
string (facultatif) - FenĂȘtre App User Model ID. Elle doit ĂȘtre dĂ©finie, sinon les autres options n'auront aucun effet.appIconPath
string (facultatif) - FenĂȘtre IcĂŽne de relance.appIconIndex
Integer (facultatif) - Index de l'icĂŽne dansappIconPath
. Ignoré lorsqueappIconPath
n'est pas défini. La valeur par défaut est0
.relaunchCommand
string (facultatif) - La Relaunch Commandde Windows.relaunchDisplayName
string (facultatif) - Window's Relaunch Display Name.
DĂ©finit les propriĂ©tĂ©s du bouton de la barre des tĂąches de la fenĂȘtre.
[!Note:
relaunchCommand
etrelaunchDisplayName
doivent toujours ĂȘtre dĂ©finies ensemble. Si l'une de ces propriĂ©tĂ©s n'est pas dĂ©finie, aucune d'elles ne sera utilisable.
win.setAccentColor(accentColor)
Windowsâ
accentColor
boolĂ©en | string - La couleur d'accentuation pour la fenĂȘtre. Suit par dĂ©faut la prĂ©fĂ©rence de lâutilisateur des paramĂštres systĂšme.
Sets the system accent color and highlighting of active window border.
Le paramĂštre accentColor
accepte les valeurs suivantes :
- Color string - Sets a custom accent color using standard CSS color formats (Hex, RGB, RGBA, HSL, HSLA, or named colors). Alpha values in RGBA/HSLA formats are ignored and the color is treated as fully opaque.
true
- Uses the system's default accent color from user preferences in System Settings.false
- Explicitly disables accent color highlighting for the window.
Exemples:
const win = new BrowserWindow({ frame: false })
// Set red accent color.
win.setAccentColor('#ff0000')
// RGB format (alpha ignored if present).
win.setAccentColor('rgba(255,0,0,0.5)')
// Use system accent color.
win.setAccentColor(true)
// Disable accent color.
win.setAccentColor(false)
win.getAccentColor()
Windowsâ
Returns string | boolean
- the system accent color and highlighting of active window border in Hex RGB format.
If a color has been set for the window that differs from the system accent color, the window accent color will be returned. Otherwise, a boolean will be returned, with true
indicating that the window uses the global system accent color, and false
indicating that accent color highlighting is disabled for this window.
win.showDefinitionForSelection()
macOSâ
Identique Ă webContents.showDefinitionForSelection()
.
win.setIcon(icon)
Windows Linuxâ
icon
NativeImage | string
Change l'icĂŽne de la fenĂȘtre.
win.setWindowButtonVisibility(visible)
macOSâ
visible
boolean
DĂ©finit si les boutons feux de circulation de la fenĂȘtre doivent ĂȘtre visibles.
win.setAutoHideMenuBar(hide)
Windows Linuxâ
hide
boolean
DĂ©finit si la barre de menus de la fenĂȘtre doit se cacher automatiquement. Une fois dĂ©finie, la barre de menu ne s'affichera que lorsque les utilisateurs appuient sur la touche Alt
seule .
Si la barre de menu est déjà visible, l'appel à setAutoHideMenuBar(true)
ne la cachera pas immédiatement.
win.isMenuBarAutoHide()
Windows Linuxâ
Retourne boolean
- Indique si la barre de menu se cache automatiquement.
win.setMenuBarVisibility(visible)
Windows Linuxâ
visible
boolean
DĂ©finit si la barre de menu doit ĂȘtre visible. Si la barre de menu est definie comme auto-hide, les utilisateurs peuvent toujours afficher la barre de menu en appuyant sur la touche Alt
seule .
win.isMenuBarVisible()
Windows Linuxâ
Retourne boolean
- Indique si la barre de menu est visible.
win.isSnapped()
Windowsâ
Retourne boolean
- si la fenĂȘtre est disposĂ©e Ă l'aide de Snap.
The window is snapped via buttons shown when the mouse is hovered over window maximize button, or by dragging it to the edges of the screen.
win.setVisibleOnAllWorkspaces(visible[, options])
macOS Linuxâ
visible
boolean
DĂ©finit si la fenĂȘtre doit ĂȘtre visible sur tous les espaces de travail.
[!Note: Cette API ne fonctionne pas sous Windows.
win.isVisibleOnAllWorkspaces()
macOS Linuxâ
Retourne boolean
- Indique si la fenĂȘtre est visible sur tous les espaces de travail.
[!Remarque : Cette API retourne toujours false sur Windows.
win.setIgnoreMouseEvents(ignore[, options])
â
ignore
boolean
Fait que la fenĂȘtre ignore tous les Ă©vĂ©nements de la souris.
Tous les Ă©vĂ©nements survenus dans cette fenĂȘtre seront transmis Ă la fenĂȘtre sous cette fenĂȘtre, mais si cette fenĂȘtre a le focus, elle recevra toujours les Ă©vĂ©nements du clavier .
win.setContentProtection(enable)
macOS Windowsâ
enable
boolean
EmpĂȘche le contenu de la fenĂȘtre d'ĂȘtre capturĂ© par d'autres applications.
On macOS it sets the NSWindow's sharingType
to NSWindowSharingNone
. On Windows it calls SetWindowDisplayAffinity
with WDA_EXCLUDEFROMCAPTURE
. Pour Windows 10 version 2004 et supĂ©rieures, la fenĂȘtre sera complĂštement exclue de la capture, les anciennes versions de Windows se comportent comme si WDA_MONITOR
Ă©tait appliquĂ©, capturant une fenĂȘtre noire.
win.isContentProtected()
macOS Windowsâ
Returns boolean
- whether or not content protection is currently enabled.
win.setFocusable(focusable)
macOS Windowsâ
focusable
boolean
Fait que la fenĂȘtre peut prendre ou non le focus.
Sur macOS, ne supprime pas le focus de la fenĂȘtre.
win.isFocusable()
macOS Windowsâ
Retourne boolean
- Indique si la fenĂȘtre peut prendre le focus.
win.setParentWindow(parent)
â
parent
BrowserWindow | null
Définit parent
comme la fenĂȘtre parent de la fenĂȘtre actuelle, en passant null
transformera la fenĂȘtre actuelle en une fenĂȘtre de niveau supĂ©rieur.
win.getParentWindow()
â
Retourne BrowserWindow | null
- La fenĂȘtre parente ou null
s'il n'y a pas de parent.
win.getChildWindows()
â
Retourne BrowserWindow[]
- Toutes les fenĂȘtres enfants.
win.setAutoHideCursor(autoHide)
macOSâ
autoHide
boolean
ContrĂŽle s'il faut masquer le curseur lors de la saisie.
win.selectPreviousTab()
macOSâ
SĂ©lectionne l'onglet prĂ©cĂ©dent lorsque les onglets natifs sont activĂ©s et qu'il y a d'autres onglets dans la fenĂȘtre.
win.selectNextTab()
macOSâ
SĂ©lectionne l'onglet suivant lorsque les onglets natifs sont activĂ©s et qu'il y a d'autres onglets dans la fenĂȘtre.
win.showAllTabs()
macOSâ
Affiche ou masque la vue dâensemble des onglets natifs lorsque ceux-ci sont activĂ©s.
win.mergeAllWindows()
macOSâ
Fusionne toutes les fenĂȘtres en une seule fenĂȘtre avec plusieurs onglets lorsque les onglets natifs sont activĂ©s et qu'il y a plus d'une fenĂȘtre ouverte.
win.moveTabToNewWindow()
macOSâ
DĂ©place l'onglet actuel dans une nouvelle fenĂȘtre si les onglets natifs sont activĂ©s et qu'il y a plus d'un onglet dans la fenĂȘtre actuelle.
win.toggleTabBar()
macOSâ
Active/dĂ©sactive la visibilitĂ© de la barre dâonglets si les onglets natifs sont activĂ©s et qu'il nây a quâun seul onglet dans la fenĂȘtre actuelle.
win.addTabbedWindow(browserWindow)
macOSâ
browserWindow
BrowserWindow
Ajoute une fenĂȘtre sous la forme d'un onglet aprĂšs l'onglet de l'instance de fenĂȘtre.
win.setVibrancy(type[, options])
macOSâ
type
string | null - Les valeurs possibles sonttitlebar
,selection
,menu
,popover
,sidebar
,header
,sheet
,window
,hud
,fullscreen-ui
,tooltip
,content
,under-window
, ouunder-page
. Voir la documentation macOS pour plus de détails.
Ajoute un effet de vibration Ă la fenĂȘtre du navigateur. Le passage en paramĂštre de null
ou d'une chaĂźne vide supprimera lâeffet de vibration sur la fenĂȘtre. The animationDuration
parameter only animates fading in or fading out the vibrancy effect. Animating between different types of vibrancy is not supported.
win.setBackgroundMaterial(material)
Windowsâ
material
stringauto
- Indique que le Gestionnaire de fenĂȘtres de bureau (DWM) dĂ©cidera automatiquement de la toile de fond tracĂ©e par le systĂšme pour cette fenĂȘtre. C'est le comportement par dĂ©faut.none
- Ne pas dessiner d'arriĂšre-plan systĂšme.mica
- Dessine lâarriĂšre-plan correspondant Ă une fenĂȘtre de longue durĂ©e.acrylic
- Dessine l'effet de matĂ©riau d'arriĂšre-plan correspondant Ă une fenĂȘtre transitoire.tabbed
- Dessine l'arriĂšre-plan correspondant Ă une fenĂȘtre avec barre de titre Ă onglets.
Cette mĂ©thode dĂ©finit l'arriĂšre-plan de la fenĂȘtre du navigateur, y compris derriĂšre la zone non-client.
See the Windows documentation for more details.
[!NOTE] This method is only supported on Windows 11 22H2 and up.
win.setWindowButtonPosition(position)
macOSâ
position
Point | null
DĂ©finit une position personnalisĂ©e pour les boutons de feux de signalisation dans une fenĂȘtre sans cadre. Le passage de null
réinitialisera la position par défaut.
win.getWindowButtonPosition()
macOSâ
Retourne Point | null
- La position personnalisĂ©e pour les boutons de feux de circulation dans la fenĂȘtre sans cadres, null
sera retournée lorsqu'il n'y a pas de position personnalisée.
win.setTouchBar(touchBar)
macOSâ
touchBar
TouchBar | null
DĂ©finit la disposition de la touchBar pour la fenĂȘtre actuelle. La spĂ©cification de null
ou d' undefined
efface la barre tactile. Cette méthode n'a d'effet que si la machine a une touch bar.
[!NOTE] The TouchBar API is currently experimental and may change or be removed in future Electron releases.
win.setBrowserView(browserView)
Experimental Deprecatedâ
browserView
BrowserView | null - AttachbrowserView
towin
. Si d'autresBrowserView
sont dĂ©jĂ attachĂ©es, elles seront supprimĂ©es de cette fenĂȘtre.
[!WARNING] The
BrowserView
class is deprecated, and replaced by the newWebContentsView
class.
win.getBrowserView()
Experimental Deprecatedâ
Retourne BrowserView | null
- La BrowserView
attachée à win
. Retourne null
si aucune n'est attachée. Déclenche une erreur si plusieurs BrowserView
sont attachées.
[!WARNING] The
BrowserView
class is deprecated, and replaced by the newWebContentsView
class.
win.addBrowserView(browserView)
Experimental Deprecatedâ
browserView
BrowserView
API de remplacement pour setBrowserView prenant en charge le travail avec plusieurs BrowserView.
[!WARNING] The
BrowserView
class is deprecated, and replaced by the newWebContentsView
class.
win.removeBrowserView(browserView)
Experimental Deprecatedâ
browserView
BrowserView
[!WARNING] The
BrowserView
class is deprecated, and replaced by the newWebContentsView
class.
win.setTopBrowserView(browserView)
Experimental Deprecatedâ
browserView
BrowserView
Hisse la browserView
au-dessus des autres BrowserView
s attachées à win
. Une erreur est lancée si browserView
n'est pas attaché à win
.
[!WARNING] The
BrowserView
class is deprecated, and replaced by the newWebContentsView
class.
win.getBrowserViews()
ExpĂ©rimental DĂ©prĂ©ciĂ©â
Retourne un BrowserView[]
- tableau de toutes les BrowserViews trié par leur z-index et qui ont été attachées à l'aide de addBrowserView
ou de setBrowserView
. La BrowserView du dessus étant le dernier élément du tableau.
[!WARNING] The
BrowserView
class is deprecated, and replaced by the newWebContentsView
class.
win.setTitleBarOverlay(options)
Windows Linuxâ
- Objet
options
color
String (optional) - The CSS color of the Window Controls Overlay when enabled.symbolColor
String (optional) - The CSS color of the symbols on the Window Controls Overlay when enabled.height
Integer (optional) - The height of the title bar and Window Controls Overlay in pixels.
On a window with Window Controls Overlay already enabled, this method updates the style of the title bar overlay.
On Linux, the symbolColor
is automatically calculated to have minimum accessible contrast to the color
if not explicitly set.