java观感示例分享

代码如下:

package com.hongyuan.gui;

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

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;

public class PlafTest {

public static void main(String[] args) {
  EventQueue.invokeLater(new Runnable() {

@Override
   public void run() {
    PlafFrame frame=new PlafFrame();
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setVisible(true);
   }
  });
 }

}

class PlafFrame extends JFrame
{
 private JPanel buttonPanel;
 public PlafFrame(){
  this.setTitle("PlafTest");
  this.setSize(400, 300);

buttonPanel=new JPanel();
  //查询观感并生成按钮
  UIManager.LookAndFeelInfo[] infos=UIManager.getInstalledLookAndFeels();
  for(UIManager.LookAndFeelInfo info:infos){
   makeButton(info.getName(),info.getClassName());
  }

this.add(buttonPanel);
 }
 void makeButton(String name,final String plafName){

JButton button=new JButton(name);
  buttonPanel.add(button);

button.addActionListener(new ActionListener() {

@Override
   public void actionPerformed(ActionEvent e) {
    try {
     //设置观感并更新组件
     UIManager.setLookAndFeel(plafName);
     SwingUtilities.updateComponentTreeUI(PlafFrame.this);
    } catch (ClassNotFoundException | InstantiationException
      | IllegalAccessException
      | UnsupportedLookAndFeelException e1) {
     e1.printStackTrace();
    }
   }
  });
 }
}

(0)

相关推荐

  • java观感示例分享

    复制代码 代码如下: package com.hongyuan.gui; import java.awt.EventQueue;import java.awt.event.ActionEvent;import java.awt.event.ActionListener; import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.SwingUtilities;i

  • 多个java泛型示例分享

    1.泛型类 1.1普通泛型 复制代码 代码如下: package test.lujianing;/** * 泛型类 * @param <T> */class Test<T>{    private T obj;    public void setValue(T obj){        this.obj =obj;    }    public T getValue(){        System.out.println(obj.getClass().getName());  

  • java数组排序示例分享

    类:Nums    权限:public方法:main    权限:public参数:nums,i,j,num;参数介绍:nums,数据类型 int[] ,用来存储 int 型的一系列数组:i,数据类型 int ,作为 for 循环的循环变量,存储排序比较的轮数:j,数据类型 int ,作为 for 循环的循环变量,存储该轮排序比较的次数:num,数据类型 int ,作为两值互换的第三方变量.方法功能:定义一个 int[] 数组:设置一个循环变量 i ,记录比较轮数:设置一个循环变量 j ,记录该

  • java贪心算法初学感悟图解及示例分享

    算法简介 1)贪心算法是指在对问题进行求解时,在每一步选择中都采取最好或者最优(即最有利)的选择,从而希望能够导致是最好或者最优的算法 2)贪心算法所得到的结果不一定是最优的结果(有时候会是最优解),但是都是相对近似(接近)最优解的结果. 应用场景 --> 集合覆盖 public class GreedyAlgorithm { public static void main(String[] args) { // 创建广播电台,放入到Map HashMap<String, HashSet<

  • 基于红黑树插入操作原理及java实现方法(分享)

    红黑树是一种二叉平衡查找树,每个结点上有一个存储位来表示结点的颜色,可以是RED或BLACK. 红黑树具有以下性质: (1) 每个结点是红色或是黑色 (2) 根结点是黑色的 (3) 如果一个结点是红色的,则它的两个儿子都是黑色的 (4) 对于每个结点,从该结点到其子孙结点的所有路径上包含相同数目的黑结点 通过红黑树的性质,可以保证所有基于红黑树的实现都能保证操作的运行时间为对数级别(范围查找除外.它所需的额外时间和返回的键的数量成正比). Java的TreeMap就是通过红黑树实现的. 红黑树的

  • 浅谈java如何生成分享海报工具类

    # 前言 例如:生成分享海报,比如注册扫二维码登录.分享商品海报等!本博文是基于springboot工程得! 一.使用步骤 1.导入pom依赖和上传图片到工程 代码如下(示例):在自己得通用工具类模块中导入坐标!(这需要根据自己得工程来) <!--谷歌图片压缩--> <dependency> <groupId>net.coobird</groupId> <artifactId>thumbnailator</artifactId> &l

  • javascript请求servlet实现ajax示例(分享)

    ajax请求是一种无刷新式的用户体验,可以发送GET和POST两种异步请求,现记录如下: GET请求: function sendRequestByGet(){ //定义异步请求对象 var xmlReq; //检测浏览器是否直接支持ajax if(window.XMLHttpRequest){//直接支持ajax xmlReq=new XMLHttpRequest(); }else{//不直接支持ajax xmlReq=new ActiveObject('Microsoft.XMLHTTP')

  • adonet基础示例分享(adonet连接数据库)

    adonet基础示例分享 复制代码 代码如下: using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using Sys

  • JAVA内部类示例详解及练习

    目录 1 内部类概述 2 特点 3 练习 : 内部类入门案例 4 成员内部类 4.1 练习 : 被private修饰 4.2 练习 : 被static修饰 5 局部内部类 6 匿名内部类 1 内部类概述 如果一个类存在的意义就是为指定的另一个类,可以把这个类放入另一个类的内部.就是把类定义在类的内部的情况就可以形成内部类的形式.A类中又定义了B类,B类就是内部类,B类可以当做A类的一个成员看待: 2 特点 1) 内部类可以直接访问外部类中的成员,包括私有成员 2) 外部类要访问内部类的成员,必须

  • Composition Api封装业务hook思路示例分享

    目录 前序 hook的场景 useGetJobList 共同 思路历程 心得 utils 和 hook 的区别 总结 前序 近期公司的新项目一个小程序,一直想尝试 Vue3 开发项目,苦于自己的驱动力不行,学的零零碎碎的.因此小程序我直接跟项目组长说我要使用 uniapp 的 Vue3 版进行开发.开发中遇到业务场景相同的,就分装了一个hook 来减少代码,易于维护. hook的场景 这种获取列表的需求很常见吧,在我这个小程序中有3处使用到了获取列表的功能.分别是: 我的收藏.已投递岗位.未投递

随机推荐