ColorIcon

来源:互联网 发布:魔兽世界画面7.0 优化 编辑:程序博客网 时间:2024/06/14 05:46

自定义的颜色图表, 下面的代码是个30*2的图标. 

import java.awt.Color;
import java.awt.Component;
import java.awt.Graphics;
import javax.swing.Icon;
/**
 * 颜色图标
 
*/

public class ColorIcon implements Icon {
 
private Color color = Color.BLUE;
 
private int iconHeight = 2;
 
private int iconWidth = 30;
 
public int getIconHeight() {
  
return iconHeight;
 }

 
public int getIconWidth() {
  
return iconWidth;
 }

 
public Color getColor() {
  
return color;
 }

 
public void setColor(Color color) {
  
this.color = color;
 }

 
public void paintIcon(Component c, Graphics g, int x, int y) {
  g.setColor(color);
  g.fillRect(x, y, getIconWidth(), getIconHeight());
 }

 
/**
  * 取得颜色的String值
  * 
@return
  
*/

 
public String getColorString() {
  String s 
= "#" + toHexString(color.getRed())
    
+ toHexString(color.getGreen()) + toHexString(color.getBlue());
  
return s;
 }

 
/**
  * 将int转成16进制字符串
  *
  * 
@param red
  * 
@return
  
*/

 
private String toHexString(int i) {
  String s 
= Integer.toHexString(i);
  
if (s.length() == 1{
   s 
+= "0";
  }

  
return s;
 }

}
原创粉丝点击