java 图像渐变_Java基础之在窗口中绘图——渐变填充(GradientApplet 1)
发布日期:2021-06-24 11:12:03 浏览次数:4 分类:技术文章

本文共 1829 字,大约阅读时间需要 6 分钟。

Applet程序。

import javax.swing.*;

import java.awt.*;

import java.awt.geom.*;

@SuppressWarnings("serial")

public class GradientApplet extends JApplet {

// Initialize the applet

@Override

public void init() {

GradientPane pane = new GradientPane(); // Pane containing filled rectangles

getContentPane().add(pane); // BorderLayout.CENTER is default position

}

// Class defining a pane on which to draw

class GradientPane extends JComponent {

@Override

public void paint(Graphics g) {

Graphics2D g2D = (Graphics2D)g;

Point2D.Float p1 = new Point2D.Float(150.f, 75.f); // Gradient line start

Point2D.Float p2 = new Point2D.Float(250.f, 75.f); // Gradient line end

float width = 300;

float height = 50;

GradientPaint g1 = new GradientPaint(p1, Color.WHITE,

p2, Color.DARK_GRAY,

true); // Cyclic gradient

Rectangle2D.Float rect1 = new Rectangle2D.Float(p1.x-100, p1.y-25, width,height);

g2D.setPaint(g1); // Gradient color fill

g2D.fill(rect1); // Fill the rectangle

g2D.setPaint(Color.BLACK); // Outline in black

g2D.draw(rect1); // Fill the rectangle

g2D.draw(new Line2D.Float(p1, p2));

g2D.drawString("Cyclic Gradient Paint", p1.x-100, p1.y-50);

g2D.drawString("p1", p1.x-20, p1.y);

g2D.drawString("p2", p2.x+10, p2.y);

p1.setLocation(150, 200);

p2.setLocation(250, 200);

GradientPaint g2 = new GradientPaint(p1, Color.WHITE,

p2, Color.DARK_GRAY,

false); // Acyclic gradient

rect1.setRect(p1.x-100, p1.y-25, width, height);

g2D.setPaint(g2); // Gradient color fill

g2D.fill(rect1); // Fill the rectangle

g2D.setPaint(Color.BLACK); // Outline in black

g2D.draw(rect1); // Fill the rectangle

g2D.draw(new Line2D.Float(p1, p2));

g2D.drawString("Acyclic Gradient Paint", p1.x-100, p1.y-50);

g2D.drawString("p1", p1.x-20, p1.y);

g2D.drawString("p2", p2.x+10, p2.y);

}

}

}

HTML文件:

code = "GradientApplet.class"

width = "400"

height = "280"

>

转载地址:https://blog.csdn.net/weixin_32421193/article/details/114572442 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:冒泡排序面向对象java_所谓的面向对象实现的冒泡排序
下一篇:java选择路径窗口_Java实现选择电脑路径的方法

发表评论

最新留言

感谢大佬
[***.8.128.20]2024年04月07日 21时05分53秒