跳到主要內容

BaseWindowConstructorOptions 物件

  • width 整數 (可選) - 視窗寬度,以像素為單位。預設值為 800
  • height 整數 (可選) - 視窗高度,以像素為單位。預設值為 600
  • x 整數 (可選) - (如果使用 y 則為必填) 視窗距離螢幕左側的偏移量。預設值為將視窗置中。
  • y 整數 (可選) - (如果使用 x 則為必填) 視窗距離螢幕頂端的偏移量。預設值為將視窗置中。
  • useContentSize 布林值 (可選) - widthheight 將用作網頁的大小,這表示實際視窗的大小將包含視窗框架的大小,並且會稍微大一些。預設值為 false
  • center 布林值 (可選) - 將視窗顯示在螢幕中央。預設值為 false
  • minWidth 整數 (可選) - 視窗最小寬度。預設值為 0
  • minHeight 整數 (可選) - 視窗最小高度。預設值為 0
  • maxWidth 整數 (可選) - 視窗最大寬度。預設值為無限制。
  • maxHeight 整數 (可選) - 視窗最大高度。預設值為無限制。
  • resizable 布林值 (可選) - 視窗是否可調整大小。預設值為 true
  • movable 布林值 (可選) macOS Windows - 視窗是否可移動。這在 Linux 上未實作。預設值為 true
  • minimizable 布林值 (可選) macOS Windows - 視窗是否可最小化。這在 Linux 上未實作。預設值為 true
  • maximizable 布林值 (可選) macOS Windows - 視窗是否可最大化。這在 Linux 上未實作。預設值為 true
  • closable 布林值 (可選) macOS Windows - 視窗是否可關閉。這在 Linux 上未實作。預設值為 true
  • focusable 布林值 (可選) - 視窗是否可以被聚焦。預設值為 true。在 Windows 上設定 focusable: false 也暗示設定 skipTaskbar: true。在 Linux 上設定 focusable: false 會使視窗停止與視窗管理員互動,因此視窗將永遠保持在所有工作區的最上層。
  • alwaysOnTop 布林值 (可選) - 視窗是否應始終保持在其他視窗的頂端。預設值為 false
  • fullscreen 布林值 (可選) - 視窗是否應以全螢幕顯示。當明確設定為 false 時,全螢幕按鈕將在 macOS 上隱藏或停用。預設值為 false
  • fullscreenable 布林值 (可選) - 視窗是否可以進入全螢幕模式。在 macOS 上,也包括最大化/縮放按鈕是否應切換全螢幕模式或最大化視窗。預設值為 true
  • simpleFullscreen 布林值 (可選) macOS - 在 macOS 上使用 Lion 之前的全螢幕模式。預設值為 false
  • skipTaskbar 布林值 (可選) macOS Windows - 是否在工作列中顯示視窗。預設值為 false
  • hiddenInMissionControl 布林值 (可選) macOS - 當使用者切換到 Mission Control 時,視窗是否應隱藏。
  • kiosk 布林值 (可選) - 視窗是否處於 Kiosk 模式。預設值為 false
  • title 字串 (可選) - 預設視窗標題。預設值為 "Electron"。如果在 loadURL() 載入的 HTML 檔案中定義了 HTML 標籤 <title>,則此屬性將被忽略。
  • icon (NativeImage | 字串) (可選) - 視窗圖示。在 Windows 上,建議使用 ICO 圖示以獲得最佳視覺效果,您也可以將其保留為未定義,以便使用可執行檔的圖示。
  • show 布林值 (可選) - 視窗在建立時是否應顯示。預設值為 true
  • frame 布林值 (可選) - 指定 false 以建立無邊框視窗。預設值為 true
  • parent BaseWindow (可選) - 指定父視窗。預設值為 null
  • modal 布林值 (可選) - 這是否為模態視窗。這僅在視窗為子視窗時有效。預設值為 false
  • acceptFirstMouse 布林值 (可選) macOS - 按一下非使用中視窗是否也會點擊到網頁內容。在 macOS 上預設值為 false。此選項在其他平台上無法設定。
  • disableAutoHideCursor 布林值 (可選) - 是否在輸入時隱藏游標。預設值為 false
  • autoHideMenuBar 布林值 (可選) - 自動隱藏選單列,除非按下 Alt 鍵。預設值為 false
  • enableLargerThanScreen 布林值 (可選) macOS - 啟用視窗調整大小超過螢幕。僅與 macOS 相關,因為其他作業系統預設允許大於螢幕的視窗。預設值為 false
  • backgroundColor 字串 (可選) - 視窗的背景顏色,格式為 Hex、RGB、RGBA、HSL、HSLA 或具名的 CSS 顏色格式。如果 transparent 設定為 true,則支援 #AARRGGBB 格式的 Alpha 值。預設值為 #FFF (白色)。請參閱 win.setBackgroundColor 以取得更多資訊。
  • hasShadow 布林值 (可選) - 視窗是否應具有陰影。預設值為 true
  • opacity 數字 (可選) macOS Windows - 設定視窗的初始不透明度,介於 0.0 (完全透明) 和 1.0 (完全不透明) 之間。這僅在 Windows 和 macOS 上實作。
  • darkTheme 布林值 (可選) - 強制視窗使用深色主題,僅在某些 GTK+3 桌面環境中有效。預設值為 false
  • transparent 布林值 (可選) - 使視窗透明。預設值為 false。在 Windows 上,除非視窗為無邊框,否則此設定無效。
  • type 字串 (可選) - 視窗的類型,預設值為一般視窗。請參閱下文以瞭解更多資訊。
  • visualEffectState 字串 (可選) macOS - 指定材質外觀應如何在 macOS 上反映視窗活動狀態。必須與 vibrancy 屬性一起使用。可能的值為
    • followWindow - 當視窗為使用中時,背景幕應自動顯示為使用中,當視窗為非使用中時,則顯示為非使用中。這是預設值。
    • active - 背景幕應始終顯示為使用中。
    • inactive - 背景幕應始終顯示為非使用中。
  • titleBarStyle 字串 (可選) - 視窗標題列的樣式。預設值為 default。可能的值為
    • default - 分別產生 macOS 或 Windows 的標準標題列。
    • hidden - 產生隱藏的標題列和全尺寸內容視窗。在 macOS 上,視窗仍然在左上方具有標準視窗控制項(「交通號誌」)。在 Windows 和 Linux 上,當與 titleBarOverlay: true 結合使用時,它將啟動視窗控制項覆蓋層 (請參閱 titleBarOverlay 以取得更多資訊),否則將不會顯示任何視窗控制項。
    • hiddenInset macOS - 產生隱藏的標題列,其替代外觀為交通號誌按鈕從視窗邊緣稍微內縮。
    • customButtonsOnHover macOS - 產生隱藏的標題列和全尺寸內容視窗,交通號誌按鈕將在滑鼠懸停在視窗左上方時顯示。注意:此選項目前為實驗性功能。
  • titleBarOverlay 物件 | 布林值 (可選) - 在 macOS 上使用無邊框視窗並結合 win.setWindowButtonVisibility(true) 或使用 titleBarStyle 以使標準視窗控制項(macOS 上的「交通號誌」)可見時,此屬性會啟用視窗控制項覆蓋層 JavaScript APICSS 環境變數。指定 true 將產生具有預設系統顏色的覆蓋層。預設值為 false
    • color 字串 (可選) Windows Linux - 啟用時,視窗控制項覆蓋層的 CSS 顏色。預設值為系統顏色。
    • symbolColor 字串 (可選) Windows - 啟用時,視窗控制項覆蓋層上符號的 CSS 顏色。預設值為系統顏色。
    • height 整數 (可選) - 標題列和視窗控制項覆蓋層的高度,以像素為單位。預設值為系統高度。
  • trafficLightPosition Point (可選) macOS - 在無邊框視窗中設定交通號誌按鈕的自訂位置。
  • roundedCorners 布林值 (可選) macOS Windows - 無邊框視窗是否應具有圓角。預設值為 true。將此屬性設定為 false 將阻止視窗在 macOS 上進入全螢幕模式。在舊於 Windows 11 Build 22000 的 Windows 版本上,此屬性無效,並且無邊框視窗將不具有圓角。
  • thickFrame 布林值 (可選) - 在 Windows 上的無邊框視窗中使用 WS_THICKFRAME 樣式,這會增加標準視窗框架。將其設定為 false 將移除視窗陰影和視窗動畫。預設值為 true
  • vibrancy 字串 (可選) macOS - 為視窗新增一種生動效果類型,僅在 macOS 上有效。可以是 appearance-basedtitlebarselectionmenupopoversidebarheadersheetwindowhudfullscreen-uitooltipcontentunder-windowunder-page
  • backgroundMaterial 字串 (可選) Windows - 設定視窗的系統繪製背景材質,包括非用戶端區域的後面。可以是 autononemicaacrylictabbed。請參閱 win.setBackgroundMaterial 以取得更多資訊。
  • zoomToPageWidth 布林值 (可選) macOS - 控制在 macOS 上,當按住 Option 鍵並點擊工具列上的綠色停止燈按鈕,或點擊「視窗」>「縮放」選單項目時的行為。如果為 true,則視窗在縮放時將成長為網頁的偏好寬度,false 將使其縮放到螢幕的寬度。這也會影響直接呼叫 maximize() 時的行為。預設值為 false
  • tabbingIdentifier 字串 (可選) macOS - 分頁群組名稱,允許將視窗作為原生分頁開啟。具有相同分頁識別符的視窗將群組在一起。這也會在視窗的分頁列中新增原生新增分頁按鈕,並允許您的 app 和視窗接收 new-window-for-tab 事件。

當使用 minWidth/maxWidth/ minHeight/maxHeight 設定最小或最大視窗大小時,它僅約束使用者。它不會阻止您將不遵循大小約束的大小傳遞給 setBounds/setSizeBrowserWindow 的建構函式。

type 選項的可能值和行為與平台相關。可能的值為

  • 在 Linux 上,可能的類型為 desktopdocktoolbarsplashnotification
    • desktop 類型將視窗放置在桌面背景視窗層級 (kCGDesktopWindowLevel - 1)。但是,請注意,桌面視窗不會接收焦點、鍵盤或滑鼠事件。您仍然可以使用 globalShortcut 來稀疏地接收輸入。
    • dock 類型建立類似 Dock 的視窗行為。
    • toolbar 類型建立具有工具列外觀的視窗。
    • splash 類型的行為方式很特別。即使視窗主體的 CSS 樣式包含 -webkit-app-region: drag,它也是不可拖曳的。此類型通常用於啟動畫面。
    • notification 類型建立一個行為類似系統通知的視窗。
  • 在 macOS 上,可能的類型為 desktoptexturedpanel
    • textured 類型新增金屬漸層外觀。此選項已棄用
    • desktop 類型將視窗放置在桌面背景視窗層級 (kCGDesktopWindowLevel - 1)。請注意,桌面視窗不會接收焦點、鍵盤或滑鼠事件,但您可以使用 globalShortcut 來稀疏地接收輸入。
    • panel 類型允許視窗浮動在全螢幕應用程式之上,方法是在執行時新增 NSWindowStyleMaskNonactivatingPanel 樣式遮罩,這通常保留給 NSPanel。此外,視窗將出現在所有空間(桌面)上。
  • 在 Windows 上,可能的類型為 toolbar