Swing定制TextField
来源:互联网 发布:逸晗网络视频编辑 编辑:程序博客网 时间:2024/05/20 08:24
package themedemo;import java.awt.BasicStroke;import java.awt.BorderLayout;import java.awt.Color;import java.awt.Graphics2D;import java.awt.GridLayout;import java.awt.Insets;import java.awt.RenderingHints;import java.util.Map;import javax.swing.BorderFactory;import javax.swing.JComponent;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JTextField;import javax.swing.Painter;import javax.swing.SwingUtilities;import javax.swing.UIDefaults;import javax.swing.UIManager;import javax.swing.WindowConstants;public class TextFieldSkinDemo {public static void main(String[] args) {SwingUtilities.invokeLater(new Runnable() {public void run() {for (UIManager.LookAndFeelInfo laf : UIManager.getInstalledLookAndFeels()) {if ("Nimbus".equals(laf.getName())) {try {UIManager.setLookAndFeel(laf.getClassName());} catch (Exception e) {e.printStackTrace();}}}for (Map.Entry<Object, Object> entry : UIManager.getLookAndFeelDefaults().entrySet()) {if ((entry.getKey().toString()).startsWith("TextField")) {System.out.println(entry.getKey() + " = "+ entry.getValue());}}JFrame frame = new JFrame("TextField Skining Demo");frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);frame.getContentPane().setLayout(new BorderLayout());JPanel panel = new JPanel(new GridLayout(0, 1, 20, 20));panel.setBorder(BorderFactory.createEmptyBorder(20, 20, 20, 20));panel.setBackground(Color.darkGray);UIDefaults textFieldDefaults = new UIDefaults();textFieldDefaults.put("TextField.contentMargins", new Insets(6,6, 6, 6));textFieldDefaults.put("TextField[Selected].textForeground",Color.WHITE);textFieldDefaults.put("TextField.backgroundPainter",new Painter<JComponent>() {public void paint(Graphics2D g, JComponent c,int w, int h) {g.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);g.setStroke(new BasicStroke(2f));g.setColor(Color.WHITE);g.fillRoundRect(0, 0, w - 2, h - 2, 8, 8);}});textFieldDefaults.put("TextField.borderPainter",new Painter<JComponent>() {public void paint(Graphics2D g, JComponent c,int w, int h) {g.setRenderingHint(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);g.setStroke(new BasicStroke(2f));g.setColor(Color.LIGHT_GRAY);g.drawRoundRect(0, 0, w - 2, h - 2, 8, 8);}});JTextField textField = new JTextField(15);panel.add(textField);textField.putClientProperty("Nimbus.Overrides",textFieldDefaults);textField.putClientProperty("Nimbus.Overrides.InheritDefaults",false);// Add a normal themed slider for comparisonJTextField normalTextField = new JTextField(15);panel.add(normalTextField);frame.getContentPane().add(panel, BorderLayout.CENTER);frame.pack();frame.setLocationRelativeTo(null);frame.setVisible(true);}});}}
0 0
- Swing定制TextField
- 定制textField
- java swing定制jprogressbar
- Swing定制Slider
- Swing定制Button
- Swing定制RadioButton
- Swing定制CheckBox
- Swing Synth外观定制UI
- Java Swing TextField对用户输入数据进行格式化处理
- 最新的Swing外观,定制UI不在话下
- 最新的Swing外观,定制UI不在话下
- 最新的Swing外观,定制UI不在话下
- JFC/Swing活学活用之定制JList显示
- 最新的Swing外观,定制UI不在话下
- 用Swing定制流动的Link样式
- java swing定制jbutton 圆角显示
- 最新的Swing外观,定制UI不在话下
- 深度理解并设置 placeholder 属性,定制自己的 textField
- Swing定制CheckBox
- 从“比较两个含有多个不同元素的集合是否相同”引申出的几种算法
- 缓存文件(一)
- POJ 1284 Primitive Roots (欧拉函数&原根定理)
- Java中各类数据库连接字符串
- Swing定制TextField
- 打造JAVA开发环境——EditPlus篇
- 如何在Cygwin中安装并配置SSH
- 抽屉效果IOS---仿网易客户端的---初步完成封装---简单易用---IOS
- MTDPART_SIZ_FULL
- ZOJ-3311
- Redis 发布/订阅机制原理分析
- kvc和kvo
- 利用javascript动态创建表格<!--进阶-->