java - 用户偏好的对比度极性?(操作系统暗模式设置)
问题描述
当前的操作系统(例如 Windows、macOS)让用户决定他们是想要浅黑背景上的深色内容(经典)还是深黑色背景上的浅色内容(深色模式)。
Java中是否有可用的东西,以便我的(客户端)Java程序可以根据该操作系统用户设置自动调整它们的对比度极性?如果这很重要,我正在使用 Swing。
我找到了系统属性apple.awt.application.appearance,但没有任何东西适用于 Windows,也没有任何独立于操作系统的东西。
还有,有听众吗?因为该设置可能会在运行时更改。
动机:反对比极性似乎可以抑制近视(Aleman et al. 2018-07-18 Science)
解决方案
似乎有办法。
首先了解桌面模式(light vs dark)的设置可以从Windows Registry中读取:How to detect Windows 10 light/dark mode in Win32 application?
那么如何从您的 java 应用程序中获取对此注册表设置的访问权只是一个问题,如下所述:Read/write to Windows registry using Java
推荐阅读
- ruby-on-rails - Aws Rekognition Text detect
- python - How do I parse multiple files in Python and extract important information?
- c# - 日期从角度错误地转换为 Web api 控制器
- windows - 通过 Powershell 更改文件的文件权限
- react-native - 如何在 Expo 上使用 VSCode 调试 React Native?
- google-cloud-platform - Kubernetes Engine Cloud SQL proxy Lost connection to MySQL server at 'reading initial communication packet'
- python - 如果给定一个初始化类为 PyObject,则从 C++ 调用 Python 类方法
- python - simple web scraper very slow
- json - jMeter:JSON 断言
- java - How to set background color of PsiFileNode or its child