如何在Swing应用程序中以Java获得macOS Mojave Style Dark Mode?

我想知道是否有某种方法可以在Java的摇摆应用程序中获得macOS Mojave风格的黑暗模式?

我想在Java Swing应用程序中的JFrame上获得macOS Mojave Style Dark Mode。

请让我知道。

谢谢


ABOUTYOU
浏览 179回答 3
3回答

慕村9548890

似乎获得黑暗模式的官方解决方案是使用系统属性。在 JDK-8235363 中,这可从 JDK 14 及更高版本获得:添加了一个新的系统属性:用于设置整个 Java 应用程序的外观。"apple.awt.application.appearance"如果未设置值,则将使用浅色模式如果设置了值,则将使用macOS的当前外观"system"其他可能的值是(与浅色相同)或(请求深色)请参阅 https://developer.apple.com/documentation/appkit/nsappearancenameaqua?language=objc"NSAppearanceNameAqua""NSAppearanceNameDarkAqua"如果设置的值不正确,则将使用浅色模式若要获得最佳用户体验,可能应始终使用该值来匹配用户的首选设置:system-Dapple.awt.application.appearance=system当然,测试并确保你没有自己定义的颜色,这使得文本或组件不可见或难以通过这种配色方案看到。PS:如果您还在寻找与本机macOS黑暗模式相匹配的Swing外观和感觉,请查看VAqua。免责声明:我从未在实际应用程序中使用它,但它看起来非常好,并使用本机渲染来看起来像真实的东西。

青春有我

要获取深色标题栏,请使用选项启动。例如:-NSRequiresAquaSystemAppearance Falsejava -jar myapp.jar -NSRequiresAquaSystemAppearance False        #  ("false", "no" or "0" will also work)注意:许多解决方案建议编辑文件,但这些解决方案对我不起作用。Info.plist警告:某些框架可能会因强制执行此操作而崩溃,因此请谨慎使用。

梦里花落0921

我想,你可能会尝试使用Darcula:https://github.com/Revivius/nb-darculahttps://github.com/bulenkov/Darculaimport com.bulenkov.darcula.*;......BasicLookAndFeel darculaLookAndFeel = new DarculaLaf();try {  UIManager.setLookAndFeel(darculaLookAndFeel);} catch (UnsupportedLookAndFeelException ex) {  // ups!}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java