GradientPanel is a class with a gradient background.
//package modrcon;
import java.awt.*;
import javax.swing.*;
/**
* GradientPanel is a class with a gradient background.
*
* @author Pyrite[1up]
*/
public class GradientPanel extends JPanel {
/** Starting Gradient Color. */
private Color startColor;
/** Ending Gradient Color. */
private Color endColor;
public static final int DIRECTION_TOPDOWN = 0;
public static final int DIRECTION_LEFTRIGHT = 0;
public static final Color HEADER_COLOR_START = new Color(0x830401);
public static final Color HEADER_COLOR_END = new Color(0xDD5731);
public static final Color WIZARD_COLOR_START = new Color(0x000080);
public static final Color WIZARD_COLOR_END = new Color(0x2179DA);
public static final Color WARNING_COLOR_START = new Color(0xE80000);
public static final Color WARNING_COLOR_END = new Color(0x000000);
public static final Color SELECTED_GRID_CELL_BG_COLOR = new Color(0xE2F5FE);
/**
* Constructor supplying a color.
*
* @param startColor
* @param endColor
*/
public GradientPanel( Color startColor , Color endColor ) {
super();
this.startColor = startColor;
this.endColor = endColor;
}
@Override protected void paintComponent( Graphics g ) {
super.paintComponent( g );
int panelHeight = getHeight();
int panelWidth = getWidth();
GradientPaint gradientPaint = new GradientPaint( panelWidth / 2 , 0 , startColor , panelWidth / 2 , panelHeight , endColor );
if( g instanceof Graphics2D ) {
Graphics2D graphics2D = (Graphics2D)g;
graphics2D.setPaint( gradientPaint );
graphics2D.fillRect( 0 , 0 , panelWidth , panelHeight );
}
}
}
Related examples in the same category