Java Swing组件定制复选框示例

  

本文实例讲述了Java Swing组件定制复选框。分享给大家供大家参考,具体如下:

  

先来看看运行效果:

  

 Java Swing组件定制复选框示例

  

具体代码如下:

        包themedemo;   进口java.awt.BasicStroke;   进口java.awt.BorderLayout;   进口java.awt.Color;   java . awt . graphics2d进口;   进口java.awt.GridLayout;   进口java.awt.RenderingHints;   进口java.util.Map;   进口javax.swing.BorderFactory;   进口javax.swing.JCheckBox;   进口javax.swing.JComponent;   进口javax.swing.JFrame;   进口javax.swing.JPanel;   进口javax.swing.Painter;   进口javax.swing.SwingUtilities;   进口javax.swing.UIDefaults;   进口javax.swing.UIManager;   进口javax.swing.WindowConstants;   公开课CheckBoxSkinDemo {   公共静态void main (String [] args) {   SwingUtilities。invokeLater(新Runnable () {   公共空间run () {   (UIManager。laf LookAndFeelInfo: UIManager   .getInstalledLookAndFeels ()) {   如果(“灵气”.equals (laf.getName ())) {   尝试{   UIManager.setLookAndFeel (laf.getClassName ());   }捕捉(异常e) {   e.printStackTrace ();   }   }   }   (Object> Map.Entry<对象;条目:UIManager   .entrySet .getLookAndFeelDefaults () ()) {   如果((entry.getKey () .toString ()) .startsWith(“复选框”)){   System.out.println (entry.getKey () + "="   + entry.getValue ());   }   }   JFrame?new JFrame (" www.jb51.net——复选框皮肤演示”);   frame.setDefaultCloseOperation (WindowConstants.EXIT_ON_CLOSE);   frame.getContentPane ()。setLayout(新BorderLayout ());   JPanel面板=new JPanel(新GridLayout (0、1、20、20));   panel.setBorder (BorderFactory。createEmptyBorder (20、20、20、20));   panel.setBackground (Color.darkGray);   UIDefaults checkBoxDefaults=new UIDefaults ();   checkBoxDefaults.put (“CheckBox.iconPainter”,   新的Painter () {   公共空间油漆(Graphics2D g, JComponent c,   int, int h) {   g.setRenderingHint (   RenderingHints.KEY_ANTIALIASING,   RenderingHints.VALUE_ANTIALIAS_ON);   g。setStroke(新BasicStroke (2 f));   g.setColor (Color.WHITE);   g。fillRect (1、1 w - 4 h - 4);   g.setColor (Color.LIGHT_GRAY);   g。绘制矩形(1,- 1,w - 4 h - 4);   }   });   checkBoxDefaults.put(“复选框选中.iconPainter”,   新的Painter () {   公共空间油漆(Graphics2D g, JComponent c,   int, int h) {   g.setRenderingHint (   RenderingHints.KEY_ANTIALIASING,   RenderingHints.VALUE_ANTIALIAS_ON);   g。setStroke(新BasicStroke (2 f));   g.setColor (Color.WHITE);   g。fillRect (1、1 w - 4 h - 4);   g.setColor (Color.DARK_GRAY);   g。drawPolyline(新int [] {2 w/3 w - 2},   新int [] {h/2 - 1 h - 4 0}, 3);   g.setColor (Color.LIGHT_GRAY);   g。绘制矩形(1,- 1,w - 4 h - 4);   }   });   JCheckBox窗口复选框=new JCheckBox窗口(“myCheckBox”);   panel.add(复选框);   checkBox.putClientProperty(“灵气。覆盖”,checkBoxDefaults);   checkBox.putClientProperty (“Nimbus.Overrides.InheritDefaults”,   假);//添加一个正常的主题滑块进行比较   JCheckBox窗口normalCheckBox=new JCheckBox窗口(“normalCheckBox”);   panel.add (normalCheckBox);   frame.getContentPane ()。添加(面板,BorderLayout.CENTER);   frame.pack ();   frame.setLocationRelativeTo(空);   frame.setVisible(真正的);   }   });   }   }      之前      

更多关于java算法相关内容感兴趣的读者可查看本站专题:《java数据结构与算法教程》、《java操作DOM节点技巧总结》,《java文件与目录操作技巧汇总》和《java缓存操作技巧汇总》

  

希望本文所述对大家java程序设计有所帮助。

Java Swing组件定制复选框示例