swingのActionに乗っける(乗っける?)アイコンの話です。色が付いていれば何でもいいからテキトーにちゃちゃっとアイコンくっつかないかな。色の指定はコロコロ変わるからgifとかやめてね。みたいなケース。
できます。
---
import java.awt.Color;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.geom.Rectangle2D;
/**
* シンプルな矩形のアイコンクラスです
*
*/
public class RectangleIcon implements Icon {
private Dimension size;
private Color color;
/**
* コンストラクタ
* @param size
* @param color
*/
public RectangleIcon(final Dimension size, final Color color) {
if(size == null || color == null) throw new IllegalArgumentException();
this.size = size;
this.color = color;
}
@Override
public int getIconHeight() {
return size.height;
}
@Override
public int getIconWidth() {
return size.width;
}
@Override
public void paintIcon(Component c, Graphics g, int x, int y) {
Graphics2D g2 = (Graphics2D)g;
g2.setPaint(color);
g2.fill(new Rectangle2D.Double(x, y, size.width, size.height));
g2.draw(new Rectangle2D.Double(x, y, size.width, size.height));
}
}
---
ではまた。
0 件のコメント:
コメントを投稿