Electron最常用的函数(备用查询)
快速开始
Electron是一个使用JavaScript、HTML和CSS构建桌面应用程序的框架创建你的应用程序安装mkdirmyappcdmyappnpminit在项目根目录会生成package。json{name:myapp,version:1。0。0,description:HelloWorld!,main:main。js,author:JaneDoe,license:MIT}安装依赖包npminstallsavedevelectron添加开发模式打开您的应用命令scripts:{start:electron。}运行命令,启动应用程序npmstart入口都是main文件。这个文件控制了主进程,它运行在一个完整的Node。js环境中创建index。html页面HelloWorld!HelloWorld!窗口中打开您的页面const{app,BrowserWindow}require(electron);constcreateWindow(){constwinnewBrowserWindow({width:800,height:600});win。loadFile(index。html);}app。whenReady()。then((){createWindow()})关闭所有窗口时退出应用app。on(windowallclosed,(){if(process。platform!darwin){app。quit()}})创建无边框窗口constwinnewBrowserWindow({frame:false})自定义标题栏样式constwinnewBrowserWindow({titleBarStyle:hidden})控制红绿灯(macOS)constwinnewBrowserWindow({titleBarStyle:customButtonsOnHover})通过预加载脚本从渲染器访问Node。js
创建一个名为preload。js的新脚本如下window。addEventListener(DOMContentLoaded,(){constreplaceText(selector,text){constelementdocument。getElementById(selector)if(element)element。innerTexttext}for(constdependencyof〔chrome,node,electron〕){replaceText({dependency}version,process。versions〔dependency〕)}})
在创建窗口方法中传递preload参数constpathrequire(path)constcreateWindow(){constwinnewBrowserWindow({width:800,height:600,webPreferences:{preload:path。join(dirname,preload。js)}})win。loadFile(index。html)}将的process。versions对象暴露给渲染器const{contextBridge}require(electron)contextBridge。exposeInMainWorld(versions,{能暴露的不仅仅是函数,我们还可以暴露变量node:()process。versions。node,chrome:()process。versions。chrome,electron:()process。versions。electron,});
通过preload。js脚本将versions这一全局变量暴露给渲染器启用拼写检查器constmyWindownewBrowserWindow({webPreferences:{spellcheck:true}})
设置拼写检查器以检查英语和法语myWindow。session。setSpellCheckerLanguages(〔enUS,fr〕)app事件绑定方法使用示例const{app}require(electron);app。on(sessioncreated,(session){console。log(session);})立即重启当前实例并向新的实例添加新的命令行参数的示例app。relaunch({args:process。argv。slice(1)。concat(〔relaunch〕);})app。exit(0);方法
quit
尝试关闭所有窗口
exit
使用exitCode立即退出
relaunch
当前实例退出,重启应用
isReady
已完成初始化返回boolean
whenReady
初始化完成
focus
获得焦点激活的app
hide
隐藏所有的应用窗口,不是最小化
isHidden(mac)
所有窗口是否都被隐藏
show(mac)
显示隐藏后的应用程序窗口
setAppLogsPath
设置或创建一个您的应用程序日志目录
getAppPath
获取当前应用程序目录
getPath(name)
与name关联的目录或文件的路径
getFileIcon
一个NativeImage类型的应用图标
setPath(name)
重写name的路径特定文件夹或文件
getVersion
应用程序的版本号
getName
应用程序的名称
setName
设置当前应用程序的名字
getLocale
当前应用程序区域
getLocaleCountryCode
获取双字母ISO3166国家代码
getSystemLocale
当前系统语言环境
addRecentDocument(winmac)
最近打开的文件列表添加新路径
clearRecentDocuments(winmac)
清空最近打开的文档列表
setAsDefaultProtocolClient
设置协议(URIscheme)默认处理程序
removeAsDefaultProtocolClient
移除默认处理器
isDefaultProtocolClient
可执行程序是否是协议
getApplicationNameForProtocol
返回默认处理器的应用程序名称
getApplicationInfoForProtocol(winmac)
返回包含应用程序名称
setUserTasks(win)
添加tasks到JumpList的Tasks类别
getJumpListSettings(win)
获取跳转列表
setJumpList(win)
设置跳转列表
requestSingleInstanceLock
返回应用程序实例是否成功取了锁
hasSingleInstanceLock
返回应用实例当前是否持有单例锁
releaseSingleInstanceLock
释放所有创建的锁
setUserActivity(mac)
创建NSUserActivity并将其设置为当前活动
getCurrentActivityType(mac)
正在运行的activity的类型
invalidateCurrentActivity(mac)
使当前的Handoff用户活动无效
resignCurrentActivity(mac)
将当前Handoff用户活动标记为非活动,但不使其失效
updateCurrentActivity(mac)
将项目从用户信息合并到其当前用户信息字典中
setAppUserModelId(win)
改变当前应用的ApplicationUserModelID为id
setActivationPolicy(mac)
为给定应用设置激活策略
importCertificate(linux)
将pkcs12格式的证书导入到平台证书库
configureHostResolver
配置主机解析器(DNS和DNSoverHTTPS)
disableHardwareAcceleration
禁用当前应用程序的硬件加速
disableDomainBlockingFor3DAPIs
GPU进程频繁崩溃,在每个域的基础上重新启动,禁用该行为
getAppMetrics
返回ProcessMetric〔〕
getGPUFeatureStatus
返回GPUFeatureStatus
getGPUInfo
GPU信息
setBadgeCount(maclinux)
应用设置计数器角标
getBadgeCount(maclinux)
获取计数器(badge)显示的当前值
isUnityRunning(linux)
前桌面环境是否为Unity启动器
getLoginItemSettings(macwin)
为openAtLogin设置相同的参数已确保正确的设置
setLoginItemSettings(macwin)
传递指定应用程序名称的参数
isAccessibilitySupportEnabled(macwin)
是否开启了辅助功能
setAccessibilitySupportEnabled(macwin)
启用或禁用访问权限树视图
showAboutPanel
显示程序的关于面板选项
setAboutPanelOptions
设置关于面板选项
isEmojiPanelSupported
当前操作系统是否支持本地emoji选择器
showEmojiPanel(macwin)
打开系统自身的emjio选取器
startAccessingSecurityScopedResource(mac)
开始访问安全范围内的资源
enableSandbox
在应用程序上启用完全沙盒模式
isInApplicationsFolder(mac)
是否从系统应用程序文件夹运行
moveToApplicationsFolder(mac)
isSecureKeyboardEntryEnabled(mac)
是否已启用安全键盘输入
setSecureKeyboardEntryEnabled(mac)
在应用中启用安全键盘输入启动时激活主实例窗口的示例const{app}require(electron);letmyWindownull;constadditionalData{myKey:myValue};constgotTheLockapp。requestSingleInstanceLock(additionalData);if(!gotTheLock){app。quit();}else{app。on(secondinstance,(event,commandLine,workingDirectory,additionalData){输出从第二个实例中接收到的数据console。log(additionalData);有人试图运行第二个实例,我们应该关注我们的窗口if(myWindow){if(myWindow。isMinimized())myWindow。restore();myWindow。focus();}})创建myWindow,加载应用的其余部分,etc。。。app。whenReady()。then((){myWindowcreateWindow();})}事件
willfinishlaunching
基础的启动的时候被触发
ready
完成初始化时,触发一次
windowallclosed
在程序关闭窗口前发信号
beforequit
当所有窗口被关闭后触发,应用程序将退出
willquit
所有窗口被关闭后触发,应用程序将退出
quit
在应用程序退出时触发
openfile(mac)
在应用中打开一个文件时触发
openurl(mac)
应用中打开一个URL时触发
activate(mac)
当应用被激活时触发
didbecomeactive(mac)
不同设备的活动想要恢复时在切换期间触发
continueactivity(mac)
不同设备的活动通过Handoff想要恢复时触发
willcontinueactivity(mac)
恢复来自不同设备的活动之前在切换期间触发
continueactivityerror(mac)
不同设备的活动无法恢复时在切换期间触发
activitywascontinued(mac)
活动在另一个设备上成功恢复后切换期间触发
updateactivitystate(mac)
当即将在另一台设备上恢复切换时触发
newwindowfortab(mac)
用户点击原生的macOS新标签按钮时触发
browserwindowblur
当browserWindow变得模糊时触发
browserwindowfocus
当browserWindow获得焦点时触发
browserwindowcreated
创建新的browserWindow时触发
webcontentscreated
创建新的webContents时触发
certificateerror
当对url的certificate证书验证失败触发
selectclientcertificate
当一个客户证书被请求的时候发出
login
当webContents要进行基本身份验证时触发
gpuinfoupdate
每当有GPU信息更新时触发
gpuprocesscrashed废弃
当gpu进程崩溃或关闭(杀死)时触发
rendererprocesscrashed废弃
渲染器进程崩溃或关闭(杀死)时触发
renderprocessgone
渲染器进程意外消失时触发
childprocessgone
子进程意外消失时触发
accessibilitysupportchanged
当Chrome的辅助功能状态改变时触发
sessioncreated
创建了一个新的session后被触发
secondinstance
在你的应用程序的首个实例中触发属性
accessibilitySupportEnabled(macwin)
是否开启了辅助功能
applicationMenu
传递Menu来给此属性赋值
badgeCount(maclinux)
返回应用角标计数的Integer属性
commandLine
Chromium使用的命令行参数
dock(mac只读)
用户dock中对应用图标进行操作
isPackaged(只读)
应用是否已经打包
name
当前应用程序的名称
userAgentFallback
全局回退的用户代理字符串
runningUnderRosettaTranslation(mac)
提示下载应用程序的arm64版本
runningUnderARM64Translation(macwin)
前应用正在使用ARM64运行环境BrowserWindow参数
width整数
窗口的宽度(以像素为单位)。默认值(800)
height整数
窗口的高度(以像素为单位)。默认值(600)
x整数(可选)
窗口相对于屏幕左侧偏移量。默认值窗口居中
y整数(可选)
窗口相对于屏幕顶端偏移量。默认值窗口居中
useContentSizeboolean
(宽)和(高)设置为web页面的尺寸。默认值(false)
centerboolean
窗口是否在屏幕居中。默认值(false)
minHeight整数
窗口的最小高度。默认值(0)
maxWidth整数
窗口的最大宽度。默认值不限
maxHeight整数
窗口的最大高度。默认值不限
resizableboolean
窗口大小是否可调整。默认值(true)
movableboolean(winmac)
窗口是否可移动。默认值(true)
minimizableboolean(winmac)
窗口是否可最小化。默认值(true)
maximizableboolean(winmac)
窗口是否最大化。默认值(true)
closableboolean(winmac)
窗口是否可关闭。默认值(true)
focusableboolean
窗口是否可以聚焦。默认值(true)。在Windows中设置(focusable:false)也意味着设置了(skipTaskbar:true)在Linux中设置(focusable:false)时窗口停止与wm交互,并且窗口将始终置顶
alwaysOnTopboolean
窗口是否永远在别的窗口的上面。默认值(false)
fullscreenboolean
窗口是否全屏。为(false)时macOS上按钮将被隐藏或禁用。默认值(false)
fullscreenableboolean
窗口是否可以进入全屏状态。macOS上,最大化缩放按钮是否可用默认值(true)
simpleFullscreenboolean(mac)
在macOS上使用preLion全屏。默认值(false)
skipTaskbarboolean(winmac)
是否在任务栏中显示窗口。默认值(false)
kioskboolean
窗口是否进入kiosk模式。默认值(false)
titlestring
默认窗口标题默认为(Electron)。如果由(loadURL())加载的HTML文件中含有标签(),此属性将被忽略
iconNativeImagestring
窗口图标。在Windows上推荐使用(ICO)图标来获得最佳的视觉效果,默认使用可执行文件的图标
showboolean
窗口是否在创建时显示。默认值(true)
paintWhenInitiallyHiddenboolean
当(show)为(false)并且渲染器刚刚被创建时,它是否应激活。为了让(document。visibilityState)在(show:false)的情况下第一次加载时正确地工作,你应该把这个设置成(false)。设置为(false)将会导致(readytoshow)事件不触发。默认值(true)
frameboolean
设置为(false)时可以创建一个无边框窗口,默认值(true)
parentBrowserWindow
指定父窗口默认值(null)
modalboolean
当前是否为模态窗口。只有当窗口是子窗口时才起作用。默认值(false)
acceptFirstMouseboolean(mac)
点击非活动窗口是否会穿透到webcontents。默认值(false)
disableAutoHideCursorboolean
是否在打字时隐藏光标。默认值(false)
autoHideMenuBarboolean
自动隐藏菜单栏,除非按了(Alt)键。默认值(false)
enableLargerThanScreenboolean(mac)
使窗口尺寸可大于屏幕的大小。其他操作系统默认允许大于屏幕的窗口。默认值(false)
backgroundColorstring
窗口背景色,格式为Hex,RGB,RGBA,HSL,HSLA或CSS命名颜色。如果(transparent)设置为(true),则支持AARRGGBB格式的透明。默认值(FFF)(白色)
hasShadowboolean
窗口是否有阴影。默认值(true)
opacitynumber(winmac)
设置窗口的初始透明度,在0。0(全透明)和1。0(完全不透明)之间。目前仅在Windows和macOS上实现。
darkThemeboolean
强制窗口使用深色主题,只在部分GTK3桌面环境下有效。默认值(false)。
transparentboolean
使窗口透明。默认值(false)。在Windows上,仅在无边框窗口下起作用。
typestring
窗口的类型,默认为普通窗口。更多信息见下文
visualEffectStatestring(mac)
在macOS上指定外观应如何响应窗口活动状态。必须与(vibrancy)属性一起使用。可能的值有
visualEffectState。followWindow
当窗口处于激活状态时,后台应自动显示为激活状态,当窗口处于非激活状态时,后台应自动显示为非激活状态。默认为该值。
visualEffectState。active
后台应一直显示为激活状态。
visualEffectState。inactive
后台应一直显示为非激活状态。
titleBarStylestring(winmac)
窗口标题栏样式。默认值(default)
titleBarStyle。default
分别返回mac或者win的标准标题栏
titleBarStyle。hidden
在一个隐藏的标题栏和一个全尺寸大小的内容窗口中取得结果。在macOS内,窗口将一直拥有位于左上的标准窗口控制器(trafficlights)。在Windows上,当与(titleBarOverlay:true)合并时,它将激活窗口控件叠加(详情请参阅(titleBarOverlay)),否则将不会显示窗口控件。
titleBarStyle。hiddenInset(mac)
隐藏标题栏,使用窗口边缘稍微小的红绿灯按钮替代。
titleBarStyle。customButtonsOnHover(mac)
隐藏的标题栏的全尺寸的内容窗口,红绿灯按钮在鼠标悬停在窗口左上方时显示。注意:此选项目前是实验性的。
trafficLightPositionPoint(mac)
在无边框窗口中设置灯绿灯按钮位置。
roundedCornersboolean(mac)
无边框窗口在macOS上,是否应该有圆角。默认值为(true)。属性设置为(false),将阻止窗口是可全屏的。
fullscreenWindowTitleboolean(mac)已弃用
titleBarStyle设置为(hiddenInset)时,在macOS全屏模式下标题栏显示标题。默认值为(false)。
thickFrameboolean
对Windows上的无框窗口使用(WSTHICKFRAME)样式,会增加标准窗口框架。设置为(false)时将移除窗口的阴影和动画。默认值为(true)。
vibrancystring(mac)
为窗口添加一种类型的动态效果,仅macOS。可以是(appearancebased),(light),(dark),(titlebar),(selection),(menu),(popover),(sidebar),(mediumlight),(ultradark),(header),(sheet),(window),(hud),(fullscreenui),(tooltip),(content),(underwindow)或(underpage)。请注意(appearancebased),(light),(dark),(mediumlight)和(ultradark)已弃用,在macOSCatalina(10。15)中已经移除。
zoomToPageWidthboolean(mac)
在macOS上控制,当按住option点击工具栏绿色红绿灯按钮或点击窗口放大菜单项的行为。如果为(true),窗口为将会缩放到适合宽度,若为(false)将会放大到屏幕宽度。这也会影响,直接调用(maximize())的行为。默认值为(false)。
tabbingIdentifierstring(mac)
选项卡组名称,允许在原生选择卡中打开窗口,macOS10。12支持。Windows中,有相同选项卡标识的将会组合在一起。这会添加一个原生新增选项卡按钮到你窗口的选项卡栏,同时(app)和窗口允许接收(newwindowfortab)事件。
webPreferencesObject
网页功能设置。
webPreferences。devToolsboolean
是否开启DevTools。如果设置为(false),则无法使用(BrowserWindow。webContents。openDevTools())打开DevTools。默认值为(true)。
webPreferences。nodeIntegrationboolean
是否启用Nodeintegration。默认值为(false)。
webPreferences。nodeIntegrationInWorkerboolean
是否在Web工作器中启用了Node集成。默认值为(false)。更多内容参见多线程
webPreferences。nodeIntegrationInSubFramesboolean实验性
是否允许在子页面(iframe)或子窗口(childwindow)中集成Node。js;预先加载的脚本会被注入到每一个iframe,你可以用(process。isMainFrame)来判断当前是否处于主框架(mainframe)中。
webPreferences。preloadstring
在页面运行其他脚本之前预先加载指定的脚本无论页面是否集成Node,此脚本都可以访问所有NodeAPI脚本路径为文件的绝对路径。当nodeintegration关闭时,预加载的脚本将从全局范围重新引入node的全局引用标志参考示例
webPreferences。sandboxboolean
如果设置该参数,沙箱的渲染器将与窗口关联,使它与ChromiumOSlevel的沙箱兼容,并禁用Node。js引擎。它与(nodeIntegration)的选项不同,且预加载脚本的API也有限制。更多详情
webPreferences。session
Session设置页面的session而不是直接忽略Session对象,也可用(partition)选项来代替,它接受一个partition字符串。同时设置了(session)和(partition)时,(session)的优先级更高。默认使用默认的session。
webPreferences。partition
string(optional)通过session的partition字符串来设置界面session。如果(partition)以(persist:)开头,该页面将使用持续的session,并在所有页面生效,且使用同一个(partition)。如果没有(persist:)前缀,页面将使用inmemorysession。通过分配相同的(partition),多个页可以共享同一会话。默认使用默认的session。
webPreferences。zoomFactornumber
页面的默认缩放系数,(3。0)表示(300)。默认值为(1。0)。
webPreferences。javascriptboolean
是否启用JavaScript支持。默认值为(true)。
webPreferences。webSecurityboolean
当设置为(false),它将禁用同源策略(通常用来测试网站),如果此选项不是由开发者设置的,还会把(allowRunningInsecureContent)设置为(true)。默认值为(true)
webPreferences。allowRunningInsecureContentboolean
允许一个https页面运行来自httpurl的JavaScript,CSS或plugins。默认值为(false)
webPreferences。imagesboolean
允许加载图片。默认值为(true)
webPreferences。imageAnimationPolicystring
指定如何运行图像动画(比如:GIF等)。可以是(animate),(animateOnce)或(noAnimation)。默认值为(animate)
webPreferences。textAreasAreResizableboolean
允许调整TextArea元素大小。默认值为(true)
webPreferences。webglboolean
启用WebGL支持。默认值为(true)
webPreferences。pluginsboolean
是否应该启用插件。默认值为(false)
webPreferences。experimentalFeaturesboolean
启用Chromium的实验功能。默认值为(false)
webPreferences。scrollBounceboolean(mac)
启用滚动回弹(橡皮筋)效果。默认值为(false)
webPreferences。enableBlinkFeaturesstring
以(逗号)分隔的需要启用的特性列表,譬如(CSSVariables,KeyboardEventKey)在RuntimeEnabledFeatures。json5文件中查看被支持的所有特性
webPreferences。disableBlinkFeaturesstring
以(,)分隔的禁用特性列表,如(CSSVariables,KeyboardEventKey)在RuntimeEnabledFeatures。json5文件中查看被支持的所有特性
defaultFontFamilyObject
为fontfamily设置默认字体
defaultFontFamily。standardstring
默认值为(TimesNewRoman)
defaultFontFamily。serifstring
默认值为(TimesNewRoman)
defaultFontFamily。sansSerifstring
默认值为(Arial)
defaultFontFamily。monospacestring
默认值为(CourierNew)
defaultFontFamily。cursivestring
默认值为(Script)
defaultFontFamily。fantasystring
默认值为(Impact)
defaultFontSizeInteger
默认值为(16)
defaultMonospaceFontSizeInteger
默认值为(13)
minimumFontSizeInteger
默认值为(0)
defaultEncodingstring
默认值为(ISO88591)
backgroundThrottlingboolean
是否在页面成为背景时限制动画和计时器。这也会影响到VisibilityAPI。默认值为(true)
offscreenboolean
是否绘制和渲染可视区域外的窗口。默认值为(false)。更多详情,请参见offscreenrenderingtutorial
contextIsolationboolean
是否在独立JavaScript环境中运行ElectronAPI和指定的(preload)脚本。默认为(true)。(预加载)脚本所运行的上下文环境只能访问其自身专用的(文档)和全局(窗口),其自身一系列内置的JavaScript((Array),(Object),(JSON),等等)也是如此,这些对于已加载的内容都是不可见的。ElectronAPI将只在(预加载)脚本中可用,在已加载页面中不可用。这个选项应被用于加载可能不被信任的远程内容时来确保加载的内容无法篡改(预加载)脚本和任何正在使用的Electronapi。该选项使用的是与Chrome内容脚本相同的技术。你可以在开发者工具Console选项卡内顶部组合框中选择ElectronIsolatedContext条目来访问这个上下文
webviewTagboolean
是否启用()tag标签。默认值为(false)。注意:为(webview)配置的(preload)脚本在执行时将启用节点集成,因此应确保远程或不受信任的内容无法创建恶意的(preload)脚本。可以使用webContents上的(willattachwebview)事件对(preload)脚本进行剥离,并验证或更改()的初始设置
additionalArgumentsstring〔〕
strin一个将被附加到当前应用程序的渲染器进程中(process。argv)的字符串列表。可用于将少量的数据传递到渲染器进程预加载脚本中。
safeDialogsboolean
是否启用浏览器样式的持续对话框保护。默认值为(false)
safeDialogsMessagestring
当持续对话框保护被触发时显示的消息。如果没有定义,那么将使用缺省的消息。注意:当前缺省消息是英文,并没有本地化
disableDialogsboolean
是否完全禁用对话框。覆盖(safeDialogs)。默认值为(false)
navigateOnDragDropboolean
将文件或链接拖放到页面上时是否触发页面跳转。默认值为(false)
autoplayPolicystring
窗口中内容要使用的自动播放策略,值可以是(nousergesturerequired),(usergesturerequired),(documentuseractivationrequired)。默认为(nousergesturerequired)
disableHtmlFullscreenWindowResizeboolean
是否阻止窗口在进入HTML全屏时调整大小。默认值为(false)
accessibleTitlestring
仅提供给如屏幕读取器等辅助工具的替代标题字符串。此字符串不直接对用户可见
spellcheckboolean
是否启用内置拼写检查器。默认值为(true)
enableWebSQLboolean
是否启用WebSQLapi。默认值为(true)
v8CacheOptionsstring
强制blink使用v8代码缓存策略。可接受的值为:
v8CacheOptions。none
禁用代码缓存
v8CacheOptions。code
基于启发式代码缓存
v8CacheOptions。bypassHeatCheck
绕过启发式代码缓存,但使用懒编译。
v8CacheOptions。bypassHeatCheckAndEagerCompile
与上面相同,除了编译是及时的。默认策略是(code)
enablePreferredSizeModeboolean
是否启用首选大小模式。首选大小是包含文档布局所需的最小大小无需滚动。启用该属性将导致在首选大小发生变化时,在(WebContents)上触发(preferredsizechanged)事件。默认值为(false)
titleBarOverlayObjectBoolean
当在macOS使用无框窗口结合(win。setWindowButtonVisibility(true))或使用(titleBarStyle)以便标准窗口控制(在macOS为trafficlights)可见,此属性将启用WindowControlsOverlayJavaScriptAPIs和CSSEnvironmentVariables。指定(true)将导致覆盖默认系统颜色。默认值为(false)
colorString(win)
启用窗口控制时覆盖面的CSS颜色默认是系统颜色
symbolColorString(win)
启用时窗口控制中符号的CSS颜色默认是系统颜色
heightInteger(winmac)
标题栏和WindowControlsOverlay,以像素为单位。默认值为系统高度实例事件const{BrowserWindow}require(electron)constchildnewBrowserWindow({modal:true,show:false})child。loadURL(https:github。com)child。once(readytoshow,(){child。show()})
pagetitleupdated
文档更改标题时触发
close
在窗口要关闭的时候触发
closed
在窗口关闭时触发
sessionend(win)
因为强制关机重启会话注销而导致窗口会话结束时触发
unresponsive
网页变得未响应时触发
responsive
未响应的页面变成响应时触发
blur
当窗口失去焦点时触发
focus
当窗口获得焦点时触发
show
当窗口显示时触发
hide
当窗口隐藏时触发
readytoshow
当页面已经渲染完成(还没有显示)窗口可以被显示时触发
maximize
窗口最大化时触发
unmaximize
当窗口从最大化状态退出时触发
minimize
窗口最小化时触发
restore
当窗口从最小化状态恢复时触发
willresize(macwin)
调整窗口大小前触发
resize
调整窗口大小后触发
resized(macwin)
当窗口完成调整大小后触发一次
willmove(macwin)
窗口移动前触发
move
窗口移动到新位置时触发
moved(macwin)
当窗口移动到新位置时触发一次
enterfullscreen
窗口进入全屏状态时触发
leavefullscreen
窗口离开全屏状态时触发
enterhtmlfullscreen
窗口进入由HTMLAPI触发的全屏状态时触发
leavehtmlfullscreen
窗口离开由HTMLAPI触发的全屏状态时触发
alwaysontopchanged
设置或取消设置窗口总是在其他窗口的顶部显示时触发
appcommand
请求一个应用程序命令时触发
scrolltouchbegin(mac)
滚轮事件阶段开始时触发
scrolltouchend(mac)
滚轮事件阶段结束时触发
scrolltouchedge(mac)
滚轮事件阶段到达元素边缘时触发
swipe
三指滑动时触发
rotategesture(mac)
在触控板旋转手势上触发
sheetbegin(mac)
窗口打开sheet(工作表)时触发
sheetend(mac)
窗口关闭sheet(工作表)时触发
newwindowfortab(mac)
当点击了系统的新标签按钮时触发
systemcontextmenu(win)
当系统上下文菜单在窗口上触发时触发实例方法
win。destroy()
强制关闭窗口
win。close()
尝试关闭窗口
win。focus()
聚焦于窗口
win。blur()
取消窗口的聚焦
win。isFocused()
判断窗口是否聚焦
win。isDestroyed()
判断窗口是否被销毁
win。show()
显示并聚焦于窗口
win。showInactive()
显示但不聚焦于窗口
win。hide()
隐藏窗口
win。isVisible()
判断窗口是否可见
win。isModal()
判断是否为模态窗口
win。maximize()
最大化窗口
win。unmaximize()
取消窗口最大化
win。isMaximized()
判断窗口是否最大化
win。minimize()
最小化窗口
win。restore()
窗口最小化状态恢复到以前的状态
win。isMinimized()
判断窗口是否最小化
win。setFullScreen(flag)
设置窗口是否应处于全屏模式
win。isFullScreen()
窗口当前是否已全屏
win。setSimpleFullScreen(flag)(mac)
进入或离开简单的全屏模式
win。isSimpleFullScreen()
窗口是否为简单全屏模式(preLion)
win。isNormal()
窗口是否处于正常状态(未最大化,未最小化,不在全屏模式下)
win。setAspectRatio(aspectRatio〔,extraSize〕)
为内容视图保持的宽高比
win。setBackgroundColor(backgroundColor)
颜色,格式为Hex,RGB,RGBA,HSL,HSLA或CSS命名颜色
win。previewFile(path〔,displayName〕)(mac)
要用QuickLook预览的文件的绝对路径
win。closeFilePreview()(mac)
关闭当前打开的
win。setBounds(bounds〔,animate〕)
重置窗口,并且移动窗口到指定的位置
win。getBounds()
表示窗口的bounds
win。getBackgroundColor()
格式获取窗口的背景色,格式为Hex(RRGGBB)
win。setContentBounds(bounds〔,animate〕)
调整窗口的工作区(如网页)的大小并将其移动到所提供的边界。
win。getContentBounds()
窗口客户端区域的bounds对象
win。getNormalBounds()
包含正常状态下的窗口大小
win。setEnabled(enable)
禁用或者启用窗口
win。isEnabled()
窗口是否启用
win。setSize(width,height〔,animate〕)
调整窗口的width和height
win。getSize()
包含窗口的宽度和高度
win。setContentSize(width,height〔,animate〕)
将窗口的工作区(如网页)的大小调整为width和height
win。getContentSize()
包含窗口的宽度和高度
win。setMinimumSize(width,height)
设置窗口最小化的width和height
win。getMinimumSize()
包含窗口最小化的宽度和高度
win。setMaximumSize(width,height)
设置窗口最大化的width和height
win。getMaximumSize()
包含窗口最大化的宽度和高度
win。setResizable(resizable)
设置用户是否可以手动调整窗口大小
win。isResizable()
用户是否可以手动调整窗口大小
win。setMovable(movable)(macwin)
设置用户是否可以移动窗口
win。isMovable()(macwin)
窗口是否可以被用户拖动,在Linux上总是返回true
win。setMinimizable(minimizable)(macwin)
设置用户是否可以手动将窗口最小化
win。isMinimizable()(macwin)
用户是否可以手动最小化窗口
win。setMaximizable(maximizable)(macwin)
设置用户是否可以手动最大化窗口
win。isMaximizable()(macwin)
窗口是否可以最大化
win。setFullScreenable(fullscreenable)
设置最大化缩放窗口按钮是切换全屏模式还是最大化窗口
win。isFullScreenable()
最大化缩放窗口按钮是切换全屏模式还是最大化窗口
win。setClosable(closable)(macwin)
设置用户是否可以手动关闭窗口。在Linux上不起作用
win。isClosable()(macwin)
窗口是否被用户关闭了
win。setAlwaysOnTop(flag〔,level〕〔,relativeLevel〕)
设置窗口是否应始终显示在其他窗口的前面
win。isAlwaysOnTop()
当前窗口是否始终在其它窗口之前
win。moveAbove(mediaSourceId)
将窗口按z轴顺序移动到源窗口前面
win。moveTop()
无论焦点如何,将窗口移至顶端(z轴上的顺序)
win。center()
将窗口移动到屏幕中央
win。setPosition(x,y〔,animate〕)
将窗口移动到x和y
win。getPosition()
返回一个包含当前窗口位置的数组
win。setTitle(title)
将原生窗口的标题更改为title
win。getTitle()
网页的标题可以与原生窗口的标题不同
win。setSheetOffset(offsetY〔,offsetX〕)(macwin)
改变macOS上sheet组件的附着点,默认情况下,sheet贴在窗口边框正下方
win。flashFrame(flag)
启动或停止闪烁窗口,以吸引用户的注意
win。setSkipTaskbar(skip)(macwin)
使窗口不显示在任务栏中
win。setKiosk(flag)
进入或离开kiosk模式
win。isKiosk()
判断窗口是否处于kiosk模式
win。isTabletMode()(win)
此API返回窗口是否在平板电脑模式下,并且调整大小事件可以用于监听对平板模式的更改
win。getMediaSourceId()
DesktopCapturerSource的id格式的窗口id
win。getNativeWindowHandle()
窗口的平台特定句柄
win。hookWindowMessage(message,callback)(win)
钩住窗口消息。当消息到达WndProc时调用callback
win。isWindowMessageHooked(message)(win)
返回booleantrue或false,具体取决于是否钩挂了消息
win。unhookWindowMessage(message)(win)
取消窗口信息的钩子
win。unhookAllWindowMessages()(win)
取消所有窗口信息的钩子
win。setRepresentedFilename(filename)(mac)
设置窗口所代表的文件的路径名,并且将这个文件的图标放在窗口标题栏上
win。getRepresentedFilename()(mac)
获取窗口当前文件路径
win。setDocumentEdited(edited)(mac)
明确指出窗口文档是否可以编辑,如果设置为true则将标题栏的图标变成灰色
win。isDocumentEdited()(mac)
判断当前窗口文档是否可编辑
win。focusOnWebView()
win。blurWebView()
win。capturePage(〔rect〕)
在rect内捕获页面的快照
win。loadURL(url〔,options〕)
加载页面
win。loadFile(filePath〔,options〕)
加载页面
win。reload()
与webContents。reload相同
win。setMenu(menu)(winlinux)
将menu设置为窗口的菜单栏
win。removeMenu()(win)
删除窗口的菜单栏
win。setProgressBar(progress〔,options〕)
设置进度条的进度值
win。setOverlayIcon(overlay,description)(win)
设置进度条的进度值。有效范围为〔0,1。0〕
win。setHasShadow(hasShadow)
设置窗口是否有阴影
win。hasShadow()
判断窗口是否有阴影
win。setOpacity(opacity)(winmac)
设置窗口的不透明度。在Linux上不起作用。超出界限的数值被限制在〔0,1〕范围内
win。getOpacity()
介于0。0(完全透明)和1。0(完全不透明)之间。在Linux上,始终返回1
win。setShape(rects)(winlinux)
对窗口形状的设置决定了窗口内系统允许绘制与用户交互的区域
win。setThumbarButtons(buttons)(win)
将指定的一组按钮添加到菜单栏的缩图工具栏上
win。setThumbnailClip(region)(win)
将窗口的区域设置为在任务栏中悬停在窗口上方时显示的缩略图图像
win。setThumbnailToolTip(toolTip)(win)
设置在任务栏中悬停在窗口缩略图上时显示的工具提示
win。setAppDetails(options)(win)
设置窗口任务栏按钮的属性
win。showDefinitionForSelection()(mac)
和webContents。showDefinitionForSelection()相同
win。setIcon(icon)(winlinux)
设置窗口图标
win。setWindowButtonVisibility(visible)(mac)
设置是否窗口交通灯需要显示
win。setAutoHideMenuBar(hide)(winlinux)
设置窗口菜单栏是否自动隐藏
win。isMenuBarAutoHide()(winlinux)
判断窗口的菜单栏是否自动隐藏
win。setMenuBarVisibility(visible)(winlinux)
设置菜单栏是否可见
win。isMenuBarVisible()(winlinux)
判断窗口的菜单栏是否可见
win。setVisibleOnAllWorkspaces(visible〔,options〕)(maclinux)
设置窗口是否在所有工作空间上可见
win。isVisibleOnAllWorkspaces()(maclinux)
判断窗口是否在所有工作空间上可见
win。setIgnoreMouseEvents(ignore〔,options〕)
忽略窗口内的所有鼠标事件
win。setContentProtection(enable)(maclinux)
防止窗口内容被其他应用捕获
win。setFocusable(focusable)(maclinux)
设置窗口是否可聚焦
win。isFocusable()(maclinux)
返回当前窗口是否可以作为焦点被选中
win。setParentWindow(parent)
设置parent为当前窗口的父窗口
win。getParentWindow()
返回BrowserWindownull如果没有父窗口则为null
win。getChildWindows()
返回BrowserWindow〔〕首页的子窗口
win。setAutoHideCursor(autoHide)(mac)
设置输入时是否隐藏光标
win。selectPreviousTab()(mac)
当启用本地选项卡,并且窗口中有另一个标签时,选择上一个选项卡
win。selectNextTab()(mac)
当启用本地选项卡,并且窗口中有另一个标签时,选择下一个选项卡
win。mergeAllWindows()(mac)
当启用本地选项卡并且存在多个打开窗口时,将所有窗口合并到一个带有多个选项卡的窗口中
win。moveTabToNewWindow()(mac)
如果启用了本机选项卡并且当前窗口中有多个选项卡,则将当前选项卡移动到新窗口中
win。toggleTabBar()(mac)
如果启用了本机选项卡并且当前窗口中只有一个选项卡,则切换选项卡栏是否可见
win。addTabbedWindow(browserWindow)(mac)
在该窗口中添加一个窗口作为选项卡,位于窗口实例的选项卡之后
win。setVibrancy(type)(mac)
在浏览器窗口中添加一个动态特效。传递null或空字符串将会移除窗口上的动态效果
win。setTrafficLightPosition(position)(mac)
在无框窗口中设置自定义控制按钮的位置
win。getTrafficLightPosition()(mac)
在无框窗口中自定义控制按钮的位置
win。setTouchBar(touchBar)(mac)
设置窗口的触摸条布局设置为null或undefined将清除触摸条
win。setBrowserView(browserView)(实验)
win。getBrowserView()(实验功能)
win。addBrowserView(browserView)(实验功能)
win。removeBrowserView(browserView)(实验功能)
win。setTopBrowserView(browserView)(实验功能)
win。getBrowserViews()(实验功能)
win。setTitleBarOverlay(options)(win)
在已开启WindowControlsOverlay的窗口上,此方法将更新标题栏叠加层的样式静态方法
BrowserWindow。getAllWindows()
所有打开的窗口的数组
BrowserWindow。getFocusedWindow()
当前获得焦点的窗口
BrowserWindow。fromWebContents(webContents)
拥有给定webContents窗口
BrowserWindow。fromBrowserView(browserView)
拥有给定browserView窗口
BrowserWindow。fromId(id)
带有给定id的窗口实例属性const{BrowserWindow}require(electron)本例中win是我们的实例constwinnewBrowserWindow({width:800,height:600})win。loadURL(https:github。com)
win。webContents
此窗口拥有的WebContents对象
win。id
代表了窗口的唯一ID
win。autoHideMenuBar
决定窗口菜单栏是否自动隐藏
win。simpleFullScreen
决定窗口是否处于简单(preLion)全屏模式
win。fullScreen
决定窗口是否处于全屏模式
win。focusable
确定窗口是否可作为焦点被选中的属性
win。visibleOnAllWorkspaces
决定窗口是否在所有工作区中可见
win。shadow
决定窗口是否显示阴影
win。menuBarVisible
决定菜单栏是否可见
win。kiosk
决定窗口是否处于kiosk模式
win。documentEdited
指明窗口文档是否已被编辑
win。representedFilename
确定窗口代表的文件的路径名
win。title
用于确定原生窗口的标题
win。minimizable
决定窗口是否可被用户手动最小化
win。maximizable
决定窗口是否可被用户手动最大化
win。fullScreenable
决定是切换全屏模式还是最大化窗口
win。resizable
决定窗口是否可被用户手动调整大小
win。closable
决定窗口是否可被用户手动关闭
win。movable
决定窗口是否可被用户移动
win。excludedFromShownWindowsMenu
决定窗口是否从Windows菜单排除
win。accessibleTitle
定义一个仅为辅助工具提供的替代标题
https:www。electronjs。org
死刑犯为何一律由看守所羁押?看守所的存在意义就是关押没有判决定罪的,还有就是刑期一年但是已经不足一年刑期的短期犯人,再有就是死刑犯,死刑犯为什么不去监狱,因为判刑后要关押不到4个月的时间,因为不满一年的关押期
福建晋江结婚,男方不出彩礼,女方大额陪嫁吗,和印度一样吗?我是土生土长的北京人,老公是福建晋江人,坐标北京,结婚婆家一分钱不掏,我家不穷,也没要彩礼,婚礼上的改口费也是各存各的,因为公婆给我1001元,我父母给老公999元,还让我还给老公
为什么汉中本地人,都觉得汉中收入低,消费高?汉中收入低消费高是个不争的事实。看汉中地区工人的平均工资也就是2000元左右,但你就看早歺吧要吃饱得8元上下。哪在南方工资4000元左右早歺也就是8元上下。你说我们的消费高不高?我
父亲与叔伯打架,父亲要我出手,我该怎么办?父亲被大伯连同他儿子打的躺了一个月,我和弟弟当时还小,什么忙也帮不上,我们两个心里暗暗发誓,等我们俩长大了,一定要让他们俩血债血偿。几年后父亲因为旧伤复发去世,可他去世前的遗言让我
刚毕业的大学生,进入国企6000工资含五险一金,很低吗?恭喜你进入国企,开始你稳定的事业,我分享一下我的经历,你就知道6000元的工资是水平已经不低了。2013年,大学本科毕业,也就是普通二类本科,没有光宗耀主,也没有敢踏入北上广深等大
投票惠州常住人口突破600万,你支持建地铁吗?常住人口600万是包含所有市区县城农村的,国家要求是市区常住人口满300万,就是惠城区惠阳区大亚湾经济技术开发区仲恺区加起来满300万,明显没有达到支持看来还是把地铁建起来吧!深圳
下岗职工档案丢失?视同缴费年限无法证明?怎么补救?职工档案,是职工办理退休的最重要材料之一。职工档案里面记载了职工的上学就业经历,必须要材料齐全才可以办理退休。如果档案材料缺失,就会导致很多重要信息无法确认。比如说出生年月特殊工种
安徽桐城在历史上出过哪些名人?我也是桐城人,这个问题我来回答。方苞(1668年5月25日1749年9月29日),字灵皋,亦字凤九,晚年号望溪,亦号南山牧叟。汉族,江南桐城人(今安徽省桐城市凤仪里)人,生于江宁府
杭州公租房补贴,你领到了吗?2022年杭州公租房补贴申请条件,你也可以申请!在杭州工作生活的人都知道,杭州的消费水平还是不低的,面对高昂的生活压力,租房压力,杭州也出台了一系列的补贴政策,帮助大家减轻工作和生
古代哪些行业的人死后不入祖坟?老一辈人都讲究落叶归根,这个归根基本上说的就是埋入祖坟。一般情况下埋有爷爷辈人的坟地,才能被称得上是祖坟。那么古代什么样的人埋不进祖坟?什么样的人进不了祖坟?这六种人进不了!没有嫁
为什么白领不管工作几年只要达到月入过万就会被认为薪水不错?在上海,有辆35万车,无房,我和老婆刚结婚,夫妻俩上班族每月到手加起来2。5万,80平精装房租4300,公积金每月近6000,取出2000交房租,自己掏2300。手里有200万现金
那一座山那一抹红黄高鹏桃的红,杏的红,不是娇艳,是妖艳。玫瑰诱人的不是红,是芳香,玫瑰虽然红的热烈,但并不剔透。枫叶的红,是烈火,能燃烧激情,是风景,能勾起画意,是诗意,能引起遐想,是彩霞,能焕发
只有当你可以拒绝的时候,你才拥有真正的自由有一种难,叫做无法向别人说no。原因有很多,可能你天性善良,可能你抹不开面子,可能你希望自己是一个招人喜欢的人,可能你只想避免不愉快于是,你宁愿损害自己的利益,无视自己的本心,也要
本周起,去北京市属公园看彩叶吧!这些景区彩叶变色率已超9成金秋十月,北京最美的季节已经到来。霜降已过,从本周开始,市属公园将呈现各种黄橙红绿叠加的多彩景色,为游客营造斑斓绚丽的赏秋体验。进入秋季,公园中的白蜡银杏黄栌元宝槭栾树水杉等常见彩
岁时草木记拒霜芙蓉开,内外兼修最宜人封面新闻记者刘可欣图片由受访者提供芙蓉生在秋江上,不向东风怨未开。秋风到了,芙蓉也如期开放了。从8月到10月,柔嫩多彩的花朵将大片大片地盛开,在层林尽染的秋天里增加花朵的存在感。作
科学漫谈主题公开课直播,知识达人连麦唠科三湘都市报10月25日讯(通讯员苏西记者袁欣)每个人对科学的含义或许有不同的理解,但科学还正在给人类文明社会发展带来巨大影响。目前,科学已在许多领域创造了奇迹,可隐形的光谱斗篷可使
蛆虫还能清理伤口吗?是如何清理的蛆是苍蝇的幼虫阶段。苍蝇在幼虫赖以生存的物质上产卵。如果幼虫以死去的人和动物组织为食,苍蝇会寻找死去的组织或伤口来产卵。在自然界中,幼虫会适时生长,然后进入蛹期。在蛹阶段,幼虫将转
特斯拉开始杀价,国内车企扛得住吗?头图来源ICPhoto一大早好像吃了一口shi的感觉一位刚提车3天的特斯拉车主,在朋友圈表达出了心塞,而在前两天,他还对新车爱不释手,感慨诺基亚换iphone的感觉。图源网络如何让
不装了?苹果遮羞布被撕碎,比尔盖茨预言智能手机或被淘汰iPhone14系列再次被曝出砍单消息,苹果遮羞布被撕碎。外媒也完全不装了,直言iPhone14Plus卖不动是库克的误判,很显然,苹果已经不香了。而比尔盖茨也曾对手机行业预言,智
微信又有大变化微信8。0。28版本上新有使用安卓平板设备和折叠屏手机的粉丝朋友吗?有一个好消息告诉大家安卓系统两台手机上实现微信双开了微信界面上会多出一个作为平板登录的选项登录之后你的两台手机上
互联网家政保姆月嫂家政月嫂服务,是指通过家政服务中介机构和家政服务人员双方的有效合作,为客户提供保姆月嫂保养产后护理婴幼儿照护家庭生活服务等家政服务项目。在实践中,通过充分利用互联网技术,家政服务中
段永平年内第六次加仓腾讯又买了点,虽然不知道到底发生了什么腾讯大楼视觉中国图在腾讯股价跌破200港元之际,知名投资人段永平又出手了。10月25日,段永平在雪球账号大道无形我有型的主页上表示又买了一点(腾讯),虽然还不知道到底发生了什么,并