Je commence à travailler avec Electron pour créer une application de bureau. Comment puis-je personnaliser la barre de titre de la fenêtre (qui contient les boutons Fermer, Réduire et Plein écran) pour ajouter des vues personnalisées? Safari est un exemple auquel je pense:
Votre seule option dans Electron serait de créer une fenêtre sans cadre (aka sans bordure), puis de créer une "fausse" barre de titre avec CSS, y compris tous les éléments d'interface utilisateur dont vous avez besoin.
Electron/webkit fournit des propriétés CSS qui vous permettent de faire glisser n'importe quel élément, comme une barre de titre:
.titlebar {
-webkit-user-select: none;
-webkit-app-region: drag;
}
La première option, multiplateforme, consiste à créer un fenêtre sans cadre . Le second est uniquement macOS, et vous permet de masquer la barre de titre, mais de conserver les commandes de la fenêtre, permettant l'ajout de boutons personnalisés. Exemple:
const { BrowserWindow } = require('electron')
// This will create a window without titlebar, allowing for customization
let win = new BrowserWindow({ titleBarStyle: 'hidden' })
win.show()
Ensuite, vous pouvez utiliser les propriétés css -webkit-user-select
et -webkit-app-region
pour spécifier la zone de glissement.