Create java Class
Example : jBbuttoncirclegradient.java
import java.awt.Color;
import java.awt.Dimension;
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.JButton;
public class jBbuttoncirclegradient extends JButton {
private Color Warnaatas = Color.RED;
private Color Warnabawah = Color.BLACK;
private Color Warnahoveratas = Color.GREEN;
private Color Warnahoverbawah = Color.RED;
private Color Warnaklikatas = Color.BLUE;
private Color Warnaklikbawah = Color.MAGENTA;
private Color Warnatext = Color.WHITE;
private boolean enter, press;
public boolean isEnter() {
return enter;
}
public void setEnter(boolean enter) {
this.enter = enter;
repaint();
}
public boolean isPress() {
return press;
}
public void setPress(boolean press) {
this.press = press;
repaint();
}
public Color getWarnaatas() {
return Warnaatas;
}
public void setWarnaatas(Color Warnaatas) {
this.Warnaatas = Warnaatas;
}
public Color getWarnabawah() {
return Warnabawah;
}
public void setWarnabawah(Color Warnabawah) {
this.Warnabawah = Warnabawah;
}
public Color getWarnahoveratas() {
return Warnahoveratas;
}
public void setWarnahoveratas(Color Warnahoveratas) {
this.Warnahoveratas = Warnahoveratas;
}
public Color getWarnahoverbawah() {
return Warnahoverbawah;
}
public void setWarnahoverbawah(Color Warnahoverbawah) {
this.Warnahoverbawah = Warnahoverbawah;
}
public Color getWarnaklikatas() {
return Warnaklikatas;
}
public void setWarnaklikatas(Color Warnaklikatas) {
this.Warnaklikatas = Warnaklikatas;
}
public Color getWarnaklikbawah() {
return Warnaklikbawah;
}
public void setWarnaklikbawah(Color Warnaklikbawah) {
this.Warnaklikbawah = Warnaklikbawah;
}
public Color getWarnatext() {
return Warnatext;
}
public void setWarnatext(Color Warnatext) {
this.Warnatext = Warnatext;
}
public jBbuttoncirclegradient() {
setPreferredSize(new Dimension(80, 80));
setOpaque(false);
setBorderPainted(false);
setFocusPainted(false);
setContentAreaFilled(false);
setForeground(Warnatext);
setFont(getFont().deriveFont(Font.BOLD));
addMouseListener(new MouseAdapter() {
@Override
public void mouseEntered(MouseEvent e) {
super.mouseEntered(e);
setEnter(true);
}
@Override
public void mouseExited(MouseEvent e) {
super.mouseExited(e);
setEnter(false);
}
@Override
public void mousePressed(MouseEvent e) {
super.mousePressed(e);
setPress(true);
}
@Override
public void mouseReleased(MouseEvent e) {
super.mouseReleased(e);
setPress(false);
}
});
}
@Override
protected void paintComponent(Graphics g) {
Graphics2D gd = (Graphics2D) g.create();
GradientPaint paint = new GradientPaint(0, 0, Warnaatas, 0, getHeight(), Warnabawah);
Shape shape = new RoundRectangle2D.Double(0, 0, getWidth(), getHeight(), getHeight(), getHeight());
if (isEnter()) {
paint = new GradientPaint(0, 0, Warnahoveratas, 0, getHeight(), Warnahoverbawah);
if (isPress()) {
paint = new GradientPaint(0, 0, Warnaklikatas, 0, getHeight(), Warnaklikbawah);
}
}
gd.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
gd.setPaint(paint);
gd.fill(shape);
gd.dispose();
super.paintComponent(g);
}
}Clean and Build
Right click java project, select clean and build
How to Use
- Create Jframe
- Drag and drop jBbuttoncirclegradient.java into jframe


0 Komentar