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();
}
}
});
}
}
相关文章
java线程安全锁ReentrantReadWriteLock原理分析readLock
这篇文章主要为大家介绍了java线程安全锁ReentrantReadWriteLock原理分析readLock,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-10-10
Springboot2.6.x高版本与Swagger2版本冲突问题解决方法
Spring Boot 2.6.x版本引入依赖 springfox-boot-starter (Swagger 3.0) 后,启动容器会报错,本文就介绍一下Springboot2.6.x高版本与Swagger2版本冲突问题解决方法,感兴趣的可以了解一下2022-04-04


最新评论