代码主题darcula_仿IntelliJ Darcula的Swing主题FlatLaf使用方法

代码主题darcula_仿IntelliJ Darcula的Swing主题FlatLaf使用方法最近Sandeepin想写个基于JavaSwing的RSS阅读器练练手,不过Swing默认主题太丑了,切成系统原生的主题也不是非常好看,正好感觉开发时用的IDEA主题很不错,不管是Light还是Darcula,都符合现代UI的设计风格。自己仿界面肯定很难仿出来,于是网上找找有没有类似风格的SwingUI库。首先找到的是Mouse0w0开源的JavaFXDarculaTheme,不过这是Java…

大家好,又见面了,我是你们的朋友全栈君。

最近Sandeepin想写个基于Java Swing的RSS阅读器练练手,不过Swing默认主题太丑了,切成系统原生的主题也不是非常好看,正好感觉开发时用的IDEA主题很不错,不管是Light还是Darcula,都符合现代UI的设计风格。自己仿界面肯定很难仿出来,于是网上找找有没有类似风格的Swing UI库。

首先找到的是Mouse0w0开源的JavaFXDarculaTheme,不过这是JavaFX的,先收藏吧。之后找到一个IntelliJ开发者放出的Darcula界面库,试了试效果很不错,可惜只有黑色主题。最后找到的FlatLaf则完美了,支持Light和Darcula,还有自己配色的几种风格,于是尝试折腾一下。

FlatLaf官方介绍说本库是用于Java Swing桌面应用程序的现代的开源的跨平台的外观库。整个UI都是扁平化风格,支持Light、Dark、IntelliJ、Darcula和一些自己配色的主题,Java 8以上支持高DPI,无依赖,支持MigLayout布局,整合得挺好的。自己运行了一下官方demo,暗色主题效果和IDEA非常相近:

代码主题darcula_仿IntelliJ Darcula的Swing主题FlatLaf使用方法

使用方法很简单,首先Maven中引入依赖库:

com.formdev

flatlaf

0.26

之后在启动JFrame之前先执行FlatLightLaf.install();即可,我用的是Light主题,如果想启动Darcula,则运行FlatDarculaLaf.install();

代码主题darcula_仿IntelliJ Darcula的Swing主题FlatLaf使用方法

包com.formdev.flatlaf下可看到多种风格均内置了install这种简单安装方法:

代码主题darcula_仿IntelliJ Darcula的Swing主题FlatLaf使用方法

官方还指出了另一种启用主题的方法,方便切换主题:

try {

UIManager.setLookAndFeel( new FlatLightLaf() );

} catch( Exception ex ) {

System.err.println( “Failed to initialize LaF” );

}

几种常用的配置:

圆角方角:

UIManager.put( “Button.arc”, 0 );

UIManager.put( “Component.arc”, 0 );

箭头类型:

UIManager.put( “Component.arrowType”, “chevron” );

UIManager.put( “Component.arrowType”, “triangle” );

滚动条的上一个/下一个箭头按钮默认情况下是隐藏的,可以配置,宽度也可以修改:

UIManager.put( “ScrollBar.showButtons”, true );

UIManager.put( “ScrollBar.width”, 16 );

异想家Sandeepin还发现,甚至,FlatLaf支持IntelliJ平台主题!

下载源代码,获取.theme.json文件,拷到本地resources,使用:

IntelliJTheme.install(MyApp.class.getResourceAsStream(“/com/myapp/themes/arc-theme-orange.theme.json”));

最后附上自己调用FlatLaf做的RSS阅读器的界面,功能还在开发中,做的差不多了也开源出来分享。

代码主题darcula_仿IntelliJ Darcula的Swing主题FlatLaf使用方法

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/153508.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mac全选文字的快捷键_Mac文本快捷键你知道多少?

    mac全选文字的快捷键_Mac文本快捷键你知道多少?我们在MAC电脑上码字的时候,经常会遇到需要对某段文字进行修改或者操作的情况,相信很多人的做法是用鼠标去移动光标快速定位,如果字数篇幅比较小也是可以的,但是如果遇到大篇幅的文章,一点点的用鼠标去找会非常麻烦,今天我就教大家几个MAC文本快捷键,让你在最短的时间内把光标移动到你想要的位置,提高在电脑上码字的效率。image1、全文&段落定位目标位置比较远的时候,需要对光标远程定位,下面的组合…

    2022年5月26日
    57
  • 超详细!Vue-Router手把手教程

    超详细!Vue-Router手把手教程(目录)最近在重温vue全家桶,再看一遍感觉记忆更深刻,所以专门记录一下(本文vue-router版本为v3.x)。1,router-view<router-view>是一个功能性组

    2022年7月4日
    20
  • Mongodb数据库命令端经常使用操作

    Mongodb数据库命令端经常使用操作

    2021年12月4日
    48
  • winscp的root连接ubuntu“拒绝访问”的解决方法

    winscp的root连接ubuntu“拒绝访问”的解决方法问题如上所示。解决:1、修改ssh配置文件:vimetc/ssh/sshd_config在#PermitRootLoginwithout-password此行下新增一行:PermitRootLoginyes保存退出。2、重启sshservicesshrestart3、重新用root账户登陆,输入密码,成功登陆。…

    2025年12月9日
    2
  • eclipse安装和配置环境教程(vue环境配置)

    官方下载地址:https://www.eclipse.org/downloads/电脑是64位的可以直接点下载64位,不是64位的电脑点下载包,在里面选择不同的版本下载点击下载后,浏览器会下载一个exe的安装包,但是下载完成后点击安装包会提示下载JDK;下载jdk官方网址:http://www.oracle.com/technetwork/java/javase/download…

    2022年4月10日
    420
  • wine卡住_Ubuntu微信

    wine卡住_Ubuntu微信UbuntuwineQQ卡死前几天在Ubuntu下写基因组信息学实验报告用wps-linux转pdf遇到了字体问题,就把windows字体拷过来安装了然后再用QQ就出现一堆口口口口。。。但是这个不影响使用影响使用的是他会卡死。。原因字体缓存没更新解决方案删除windows字体嫌麻烦我就没删。。或者可以:重建缓存cd/usr/share/fontssudofc-cache-fv应该解决了。后续好像还是会卡想到上次安装字体的时候有一堆报错部分截图

    2025年9月19日
    7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号