如何使用Node.js / Electron确定Windows 10 Dark Mode?

时间:2017-07-14 23:03:40

标签: node.js windows user-interface

Windows 10周年更新引入了一种黑暗模式,大多数支持应用程序都会将其调色板更改为黑暗。我想使用Node.js或Electron来确定是否启用了该设置,因此我可以在默认情况下适当选择启动我的应用程序的主题。最好的方法是什么?

2 个答案:

答案 0 :(得分:1)

electron 6.0.0 (and chromium 76)媒体查询prefers color scheme开始,可以使用这种方式来检测暗/亮模式:

@media screen and (prefers-color-scheme: light), screen and (prefers-color-scheme: no-preference) {
    /*light theme*/
  body{
    color: black;
    background-color: white;
  }
}

@media screen and (prefers-color-scheme: dark) {
    /*dark theme*/
  body {
    color: white;
    background-color: black;
  }
}

您还可以按照以下方式以编程方式检查暗模式:

if (window.matchMedia('(prefers-color-scheme:dark)').matches) {
    console.log('dark');
}
else {
    console.log('light or no-preference');
}

演示:codepen

答案 1 :(得分:0)

我能想到的一个选择是阅读以下注册表项: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize\AppsUseLightTheme