
import java.awt.Color;
import java.awt.GradientPaint;
import java.awt.Graphics;
import java.awt.Graphics2D;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class GradientsRedYellow extends JPanel{
public void paint(Graphics g){
super.paint(g);
Graphics2D g2d = (Graphics2D)g;
/**
* 参数:
* x1 - 用户空间中第一个指定 Point 的 x 坐标
* y1 - 用户空间中第一个指定 Point 的 y 坐标
* color1 - 第一个指定 Point 处的 Color
* x2 - 用户空间中第二个指定 Point 的 x 坐标
* y2 - 用户空间中第二个指定 Point 的 y 坐标
* color2 - 第二个指定 Point 处的 Color
* cyclic - 如果渐变模式在两种颜色之间重复循环,则为 true;否则为 false。
*/
GradientPaint gp1 = new GradientPaint(5,5,Color.red,20,20,Color.yellow,true);
g2d.setPaint(gp1);
g2d.fillRect(20, 20, 250, 250);
}
public static void main(String[] args) {
JFrame f = new JFrame();
f.add(new GradientsRedYellow());
f.setSize(300,300);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setLocationRelativeTo(null);
f.setVisible(true);
}
}