1风格种类

// Metal风格 (默认)
String lookAndFeel = "javax.swing.plaf.metal.MetalLookAndFeel";
UIManager.setLookAndFee(lookAndFeel);// Windows风格
String lookAndFeel = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel";
UIManager.setLookAndFee(lookAndFeel);  // Windows Classic风格
String lookAndFeel = "com.sun.java.swing.plaf.windows.WindowsClassicLookAndFeel";
UIManager.setLookAndFee(lookAndFeel);  // Motif风格
String lookAndFeel = "com.sun.java.swing.plaf.motif.MotifLookAndFeel";
UIManager.setLookAndFeel(lookAndFeel);// Mac风格 (需要在相关的操作系统上方可实现)
String lookAndFeel = "com.sun.java.swing.plaf.mac.MacLookAndFeel";
UIManager.setLookAndFeel(lookAndFeel);// GTK风格 (需要在相关的操作系统上方可实现)
String lookAndFeel = "com.sun.java.swing.plaf.gtk.GTKLookAndFeel";
UIManager.setLookAndFeel(lookAndFeel);// 可跨平台的默认风格
String lookAndFeel = UIManager.getCrossPlatformLookAndFeelClassName();
UIManager.setLookAndFeel(lookAndFeel);
// 当前系统的风格
String lookAndFeel = UIManager.getSystemLookAndFeelClassName();
UIManager.setLookAndFeel(lookAndFeel);

2.代码实现

import java.awt.*;
import javax.swing.*;
import javax.swing.UIManager;
import java.util.LinkedHashMap;
import java.util.Map;
public class SwingTheme{public JPanel showJP;//用于显示所有的面板 //java Swing的8种类主题比较public static void main(String[] args){SwingTheme swingTheme=new SwingTheme();swingTheme.init();}public void init(){JFrame jframe=new JFrame();jframe.setSize(800,800);jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);jframe.setTitle("Swing主题");jframe.setLayout(new BorderLayout()); JPanel mainJP=new JPanel(new BorderLayout());jframe.add(mainJP,BorderLayout.CENTER);showJP=new JPanel(new GridLayout(0,1));JScrollPane jsp=new JScrollPane(showJP,ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED,ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED );mainJP.add(jsp,BorderLayout.CENTER);//存储10中主题风格LinkedHashMap<String,String> themeMap=new LinkedHashMap<String,String>();themeMap.put("默认风格","");themeMap.put("Metal风格","javax.swing.plaf.metal.MetalLookAndFeel");themeMap.put(" Windows风格","com.sun.java.swing.plaf.windows.WindowsLookAndFeel");themeMap.put("Windows Classic风格","com.sun.java.swing.plaf.windows.WindowsClassicLookAndFeel");themeMap.put("Motif风格","com.sun.java.swing.plaf.motif.MotifLookAndFeel");//(需要在相关的操作系统上方可实现),win会报错themeMap.put("Mac风格","com.sun.java.swing.plaf.mac.MacLookAndFeel");//(需要在相关的操作系统上方可实现),win会报错themeMap.put("GTK风格","com.sun.java.swing.plaf.gtk.GTKLookAndFeel");themeMap.put("nimbus风格","com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");themeMap.put("可跨平台的默认风格", UIManager.getCrossPlatformLookAndFeelClassName());themeMap.put("当前系统的风格",UIManager.getSystemLookAndFeelClassName());//遍历显示所有主题for(Map.Entry<String,String> entry:themeMap.entrySet()){JPanel returnShowJP=getSwingThemeJP(entry.getKey(),entry.getValue());showJP.add(returnShowJP);}            jframe.setVisible(true);}public static JPanel  getSwingThemeJP(String name,String type){JPanel showMainJP=new JPanel(new FlowLayout());showMainJP.setPreferredSize(new Dimension(800,150));showMainJP.setBorder(BorderFactory.createTitledBorder(name));if(!name.equals("默认风格")){try{UIManager.setLookAndFeel(type);}catch(Exception e){System.out.println(name+"主题出错");e.printStackTrace();}}//加入所有的组件显示测试showMainJP.add(new JLabel("标签"));showMainJP.add(new JButton("按钮"));showMainJP.add(new JRadioButton("单选按钮"));showMainJP.add(new JCheckBox("复选框"));showMainJP.add(new JToggleButton("开关按钮"));showMainJP.add(new JTextField("文本框"));showMainJP.add(new JPasswordField("密码框"));showMainJP.add(new JTextArea("文本区域"));String item[]={"下拉列表框"};showMainJP.add(new JComboBox());item[0]="列表";showMainJP.add(new JList(item));showMainJP.add(new JProgressBar(10,100));showMainJP.add(new JSlider(10,100,50));showMainJP.add(new JTable(2,2));item[0]="树";showMainJP.add(new JTree(item));return showMainJP;}
}

3.效果显示

推荐一个学习java swing的地址,总结的很好很全https://blog.csdn.net/xietansheng/article/details/72814531

Java swing的主题风格设置相关推荐

  1. java swing 文件选择,设置默认文件选择路径,桌面路径

    在上传文件,选择文件的时候,往往会遇到路径选择的问题,比如,一般上传的默认路径是 我的文档,而我们恰好需要默认在桌面,那怎么办呢? 下面的内容也许会帮到你! 首先,看java swing 方面,使用 ...

  2. Java Swing控件样式设置

    2019独角兽企业重金招聘Python工程师标准>>> 1.设置JTable的背景色 一般情况下,设置JTable背景色的时候,只能设置有数据行的背景色,对于默认的底色部分还是没法设 ...

  3. VS Code 主题风格设置

    本文用于保存个人中意的几款 theme style ~ ~ 1.吸血鬼主题 颜色主题:Dracula Official 文件图标主题:Material Icon Theme 2.深海主题 颜色主题:M ...

  4. Ubuntu 16.04 MAC主题风格设置

    目录 一.安装Unity Tweak Tool 二.安装macbuntu 三.安装Docky 四.安装MAC启动效果 五.整体效果 一.安装Unity Tweak Tool 1.输入命令: sudo ...

  5. Java Swing窗体JFrame之设置窗体图标

    方法1: // public ImageIcon (URL location) ImageIcon imageIcon = new ImageIcon(getClass().getResource(& ...

  6. 若依 ruoyi 修改默认布局设置:主题风格设置 主题颜色 系统布局配置 开启 TopNav 开启 Tags-Views 固定 Header 显示 Logo动态标题 等

    代码 ruoyi-ui/src/settings.js 修改之后 重新启动或打包,会使用setting中的配置作为默认值

  7. JAVA SWING 台球收费系统 设置台球桌数量

    Billiards Charging System 该软件打开时,要求人为输入台球桌的数量,最多为10,输入要为整数 点击确定后,等待系统部署台球桌 如图可看见自定义的10 张台球桌,右上角是单价,默 ...

  8. java swing 控件拖动_java swing中实现拖拽功能示例

    java实现拖拽示例 Swing中实现拖拽功能,代码很简单,都有注释,自己看,运行效果如下图: package com; import java.awt.*;import java.awt.datat ...

  9. Java Swing快速构建窗体应用程序

    以前接触java感觉其在桌面开发上,总是不太方便,没有一个好的拖拽界面布局工具,可以快速构建窗体. 最近学习了一下NetBeans IDE 8.1,感觉其窗体设计工具还是很不错的 , 就尝试一下做了一 ...

  10. 解决 GTK+/GNOME 3 环境下 Java Swing 程序使用本地 GTK+ 主题时菜单无边框 bug 的方法...

    在 GTK+/GNOME 3 环境下采用默认的 Adwaita 主题时,Java Swing 程序如果使用本地 GTK+ 主题会出现菜单无边框的 bug,这个问题也可能在其他常用的 GTK+ 主题中出 ...

最新文章

  1. 不能交换到解决jenkins用户的问题
  2. 学习心得体会、备忘录整理
  3. 一天一个设计模式之JS实现——建造者模式
  4. 学数学但是不会计算机,数学差的人不配学计算机?布朗大学教授告诉你一毛钱关系都没有!...
  5. Linux 下使用Postgre中的命令,要使用postgres这个用户
  6. 关于PHOTO SHOP CS9.0无法启动adobe updater 请重新安装应用程序和组件解决方法!
  7. linux中/etc/rc.local脚本的作用
  8. 【深入浅出通信原理-学习笔记】信源编码
  9. 计算机考试系统———全套视频
  10. 计算机面板上英文字母的意识,电脑键盘上有英语的汉语的意识
  11. MySQL笔记---DQL语言
  12. h5实现上下滑动切页
  13. p2p服务器的协议,P2P文件传输协议之BitTorrent协议
  14. crm订单管理系统有哪些?
  15. POJ 1647 One-move checkmate G++
  16. Vue 框架-06-条件语句 v-if 实现选项卡效果
  17. R语言矩阵特征值分解(谱分解)和奇异值分解(SVD)特征向量分析有价证券数据
  18. 链路层典型协议(简述)
  19. 基于Linux系统的KingbaseES数据库软件安装指南(3. 安装前准备工作)
  20. Nvida nano 系统安装

热门文章

  1. Coreldraw x6离线激活注册机免费下载安装教程
  2. java判断闰年的方法_Java判断闰年的2种方法示例|chu
  3. 重磅!程序员工资不会上涨的几个现象
  4. 你有哪些独到的识人技巧?(转自知乎)
  5. 哔哩哔哩mac客户端!亲测!支持big sur系统
  6. 笔记本可以连wifi,但很卡或者无法访问互联网的一种解决方法
  7. oracle类型number,Oracle NUMBER 类型细讲
  8. usb共享远程服务器,USB Network Gate
  9. JDBC部署到Tomcat驱动加载失败
  10. 构词法——现代单词记忆十大规律