系统表现 | systemPreferences

systemPreferences

获取系统首选项。

过程:Main

const {systemPreferences} = require('electron') console.log(systemPreferences.isDarkMode())

活动

systemPreferences对象发出以下事件:

事件:'重音颜色改变' Windows

返回:

  • event 事件

Event: ‘color-changed’ Windows

返回:

  • event Event

事件:'倒置颜色方案改变' Windows

返回:

  • event 事件

方法

systemPreferences.isDarkMode() macOS

返回Boolean- 系统是否处于黑暗模式。

systemPreferences.isSwipeTrackingFromScrollEventsEnabled() macOS

返回Boolean- 页面间滑动设置是否打开。

systemPreferences.postNotification(event, userInfo) macOS

  • event

上传event为MacOS的原生通知。该userInfo对象包含随通知一起发送的用户信息词典。

systemPreferences.postLocalNotification(event, userInfo) macOS

  • event String

发布event为MacOS的原生通知。该userInfo对象包含随通知一起发送的用户信息词典。

systemPreferences.subscribeNotification(event, callback) macOS

  • event String

订阅macOS的本地通知,callbackcallback(event, userInfo)在相应event情况发生时调用。该userInfo对象包含随通知一起发送的用户信息词典。

id订户的返回,其可用于退订event

在这个API所订阅的引擎之下NSDistributedNotificationCenter,示例值event是:

  • AppleInterfaceThemeChangedNotification

systemPreferences.unsubscribeNotification(id) macOS

  • id Integer

删除订阅者id

systemPreferences.subscribeLocalNotification(event, callback) macOS

  • event String

subscribeNotification相同,但NSNotificationCenter用于本地默认值。这对于诸如NSUserDefaultsDidChangeNotification

systemPreferences.unsubscribeLocalNotification(id) macOS

  • id Integer

unsubscribeNotification相同,但将用户从中删除NSNotificationCenter

systemPreferences.getUserDefault(key, type) macOS

  • key String

返回any- key系统首选项中的值。

此API NSUserDefaults在macOS上使用。一些流行keytypes是:

  • AppleInterfaceStyle: string

systemPreferences.setUserDefault(key, type, value) macOS

  • key String

设置key系统偏好设置的值。

请注意,type应该匹配实际类型value。如果不存在,则抛出异常。

此API NSUserDefaults在macOS上使用。一些流行keytypes是:

  • ApplePressAndHoldEnabled: boolean

systemPreferences.isAeroGlassEnabled() Windows

返回Boolean- true如果启用DWM组合(Aero Glass),false否则返回。

使用它来确定是否应创建透明窗口的示例(禁用DWM组合时,透明窗口无法正常工作):

const {BrowserWindow, systemPreferences} = require('electron') let browserOptions = {width: 1000, height: 800} // Make the window transparent only if the platform supports it. if (process.platform !== 'win32' || systemPreferences.isAeroGlassEnabled()) { browserOptions.transparent = true browserOptions.frame = false } // Create the window. let win = new BrowserWindow(browserOptions) // Navigate. if (browserOptions.transparent) { win.loadURL(`file://${__dirname}/index.html`) } else { // No transparency, so we load a fallback that uses basic styles. win.loadURL(`file://${__dirname}/fallback.html`) }

systemPreferences.getAccentColor() Windows

返回String- RGBA十六进制格式中的用户当前系统宽带口音颜色首选项。

const color = systemPreferences.getAccentColor() // `"aabbccdd"` const red = color.substr(0, 2) // "aa" const green = color.substr(2, 2) // "bb" const blue = color.substr(4, 2) // "cc" const alpha = color.substr(6, 2) // "dd"

systemPreferences.getColor(color) Windows

  • color 字符串 - 以下值之一:

返回String- RGB十六进制形式(#ABCDEF)的系统颜色设置。有关更多详细信息,请参阅Windows文档(https://msdn.microsoft.com/en-us/library/windows/desktop/ms724371(v = vs.85%29.aspx)。

systemPreferences.isInvertedColorScheme() Windows

返回Boolean- true如果反转的颜色方案(如高对比度主题)处于活动状态,false则返回。