该按钮继承子JButton,圆角,颜色渐变,有透明度,而且可以自己设置这些参数。
import java.awt.AlphaComposite;
import java.awt.Color;
import java.awt.Font;
import java.awt.GradientPaint;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.Shape;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.geom.RoundRectangle2D;
import javax.swing.ImageIcon;
import javax.swing.JButton;
public class MyButton extends JButton {
//判断类的serialVersionUID来验证版本一致性的
private static final long serialVersionUID = 39082560987930759L;
//默认颜色 两种渐变色
private Color BUTTON_COLOR1 = new Color(205, 255, 205);
private Color BUTTON_COLOR2 = new Color(51, 154, 47);
/*public static final Color BUTTON_COLOR1 = new Color(125, 161, 237);
public static final Color BUTTON_COLOR2 = new Color(91, 118, 173); */
//按下按钮时字体的默认颜色
private Color BUTTON_FOREGROUND_COLOR1 = new Color(51, 154, 47);
private Color BUTTON_FOREGROUND_COLOR2 = Color.WHITE;
//默认字体
private Font font = new Font("system", Font.PLAIN, 12);
//判断是否按下
private boolean hover;
private float clickTran = 0.6F, exitTran = 1F;
//修改按下后透明度
public void setClickTran(float tran) {
clickTran = tran;
}
//修改按下前透明度
public voi