JAVA观感器

简介:

在JAVA的GUI开发中,Swing组件使用的是默认的皮肤,我们可以通过设置观感器来更改默认的皮肤。

如图所示,这就是JAVA默认观感器(XP系统)现实的效果。这一篇博客将通过示例代码为大家演示如何更改默认的观感器。

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JRadioButton;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.JToggleButton;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.UIManager.LookAndFeelInfo;

/**
 * 观感器示例
 * 
 * @author jianggujin
 *
 */
public class LookAndFeelDemo extends JFrame implements ActionListener
{
   public LookAndFeelDemo()
   {
      super("SwingDemo");

      JMenuBar menuBar = new JMenuBar();
      JMenu skin = new JMenu("皮肤");
      // 获得所有已安装观感器
      LookAndFeelInfo[] lookAndFeelInfos = UIManager.getInstalledLookAndFeels();
      // 遍历观感器并添加菜单项
      for (LookAndFeelInfo lookAndFeelInfo : lookAndFeelInfos)
      {
         JMenuItem item = new JMenuItem(lookAndFeelInfo.getName());
         item.setActionCommand(lookAndFeelInfo.getClassName());
         item.addActionListener(this);
         skin.add(item);
      }
      menuBar.add(skin);
      setJMenuBar(menuBar);

      JPanel root = new JPanel();
      root.add(new JButton("我是JButton"));
      root.add(new JToggleButton("我是JToggleButton"));
      root.add(new JLabel("我是JLabel"));
      root.add(new JCheckBox("我是JCheckBox"));
      root.add(new JRadioButton("我是JRadioButton"));
      root.add(new JTextField("我是JTextField"));
      root.add(new JPasswordField("我是JPasswordField"));
      root.add(new JTextArea("我是JTextArea"));
      add(root);
      setSize(400, 300);
      setLocationRelativeTo(null);
      setDefaultCloseOperation(EXIT_ON_CLOSE);
      setVisible(true);
   }

   public static void main(String[] args)
   {
      new LookAndFeelDemo();
   }

   @Override
   public void actionPerformed(ActionEvent e)
   {
      JMenuItem item = (JMenuItem) e.getSource();
      try
      {
         UIManager.setLookAndFeel(item.getActionCommand());
         SwingUtilities.updateComponentTreeUI(this);
      }
      catch (Exception e2)
      {
         e2.printStackTrace();
      }

   }
}

运行效果:
这里写图片描述

目录
相关文章
|
SQL 存储 关系型数据库
PostgreSQL 通过SQL接口关闭、重启数据库
PostgreSQL 通过SQL接口关闭、重启数据库
2622 0
|
网络架构 网络协议
如何查看路由器的mac和计算机的mac
如何查看路由器的mac和计算机的mac 一、查看路由器的mac     方法一: 直接看路由器的背面,如下图,即可看到MAC地址   打开命令提示符窗口,输入ipconfig,找到网关地址,如192.168.1.1 3 再在命令提示符窗口中输入 arp -a 找到对应的ip地址 192.168.1.1 后的地址即为无线路由MAC地址     二、查看计算机的mac       cmd命令窗口中输入ipconfig/all命令即可查看。
3926 0
快速确定网络号的范围
该文介绍了如何通过子网掩码快速确定IP地址中的网络号,避免复杂计算。以IP地址192.168.1.10和子网掩码255.255.255.0为例,网络号是前三个字节(192.168.1),加上子网掩码中主机号部分的0(.0),得到网络号192.168.1.0。此外,文中还提供了IP地址与子网掩码的二进制转换方法。
418 6
|
Kubernetes 安全 API
Kubernetes系统安全-认证(Authentication)
文章主要介绍了Kubernetes系统中的安全认证机制,包括API服务器的访问控制、认证、授权策略和准入控制,以及如何使用kubeconfig文件和创建自定义用户与服务账号。
3198 0
Kubernetes系统安全-认证(Authentication)
|
存储 Linux Docker
在Docker中,本地的镜像文件都存放在哪里?
在Docker中,本地的镜像文件都存放在哪里?
|
存储 人工智能 监控
AI推理
AI推理
596 1
|
算法 数据安全/隐私保护 Docker
Docker | 教你搭建属于自己的镜像仓库
Docker | 教你搭建属于自己的镜像仓库
4192 1
|
JSON Kubernetes 算法
【云原生Kubernetes】二进制搭建Kubernetes集群(上)——部署etcd集群和单master(1)
本文将带大家一起通过二进制搭建Kubernetes v1.20,因为实验内容较多,故分成上、中、下三篇文章进行展示。
552 1
|
程序员 芯片
pwm电机调速的原理介绍与代码实现
pwm电机调速的原理介绍与代码实现
1193 0
pwm电机调速的原理介绍与代码实现
方法:号码如何批量导入苹果手机通讯录?
操作一:在电脑上打开软件,金芝号码提取导入助手。然后你把你的号码复制过来,放进软件的“导入通讯录”功能。操作二:选择“生成通讯录”,会得到一个文件,你把文件存放到电脑桌面。操作三:最后你再把电脑桌面上的文件,通过电脑上的薇xin或电脑Q,发送给你的手机徽信或者手机扣扣,在苹果手机上打开它,即可把号码批量导入苹果手机通讯录。
方法:号码如何批量导入苹果手机通讯录?

热门文章

最新文章