当前位置: 首页 > 知识库问答 >
问题:

javafx中带有渐变颜色的矩形

彭海阳
2023-03-14

我在我的javafx应用程序中使用锚板。我想画一个矩形并用渐变色填充它,如下所示:矩形的左侧是蓝色的,右侧是红色的,我希望它看起来从左到右,蓝色减少,红色增加。

我知道如何放置一个矩形(如何在javafx中使用Rectangle类),但我不知道如何以这种方式填充它。有什么想法吗?

共有1个答案

充煌
2023-03-14

请参阅有关线性渐变的文档。

public class Gradient extends Application {

    public static final double S = 100;

    @Override
    public void start(Stage stage) {
        Stop[] stops = new Stop[] {
                new Stop(0, Color.BLUE),
                new Stop(1, Color.RED)
        };
        LinearGradient gradient = new LinearGradient(
                0, 0,
                1, 0,
                true,
                CycleMethod.NO_CYCLE,
                stops
        );

        Rectangle rectangle = new Rectangle(S, S, gradient);

        stage.setScene(new Scene(new Group(rectangle)));
        stage.show();
    }

    public static void main(String[] args) {
        launch();
    }

}
 类似资料:
  • 主要内容:JavaFX渐变颜色,线性梯度(LinearGradient),径向渐变,半透明渐变,反射循环渐变JavaFX渐变颜色 可以使用径向渐变使形状看起来三维(立体)。 梯度绘制可以在两种或更多种颜色之间内插,这给出形状的深度。JavaFX提供两种类型的渐变:径向渐变()和线性渐变()。 要在JavaFX中创建渐变颜色,需要设置五个属性值。如下 - 设置开始起点的第一个停止颜色。 将终点设置为终止停止颜色。 设置属性以指定是使用标准屏幕坐标还是单位平方坐标。 将循环方法设置为使用三个枚举:,

  • 我试图找出如何复制JavaFX梯度是如何在涉及透明度时插值/混合的。如果我尝试使用内置的方法在颜色之间插值的简单方法,我会得到完全不同的结果。正如您在这里看到的: 这两个渐变都是简单的[红色@0%,rgba(0,0,255,0)@50%,绿色@100%],但是蓝色在JavaFX渐变(顶部)中根本不可见,在朴素的方法(底部)中非常可见。颜色如何在渐变中插值的实际公式是什么,在哪里可以找到它(即什么类

  • 对于一个可以将噪声函数(-1到1个值)映射到颜色的编辑器,我需要一些控件来定义颜色渐变,比如值-0是黑-0.3是黄-0.8是红-1是白,所以整个渐变从黑到白,这是可编辑的,JavaFX中是否内置了类似的东西,或者我必须编写自己的控件? 基本上是这样的smth: 提前致谢

  • 问题内容: 我知道Internet Explorer具有一些专有扩展,因此您可以执行诸如创建具有渐变背景的div之类的操作。我不记得元素名称或其用法。有没有人有一些例子或链接? 问题答案: 我用于所有浏览器渐变的代码: 您需要指定一个高度或zoom: 1将其应用于hasLayoutIE中的元素。 更新: 这是面向所有LESS用户的LESS Mixin(CSS)版本:

  • 问题内容: 是否有生成器,或生成这种文本的简便方法,而无需定义 每个 字母 所以像这样: 但是不是用 彩虹 色而是用其他颜色(例如,白色到灰色/浅蓝色渐变等)生成的,我为此找不到简单的解决方案。有什么办法吗? 问题答案: 我不完全了解 Stop的 工作原理。但是我有一个 渐变文本 示例。也许这会帮到您! _您也可以根据需要为渐变添加更多颜色,或者从颜色生成器中选择其他颜色

  • 问题内容: 我在中创建两个对象,然后执行以下操作。 运行代码时,我可以看到两个矩形(一个在Aqua中,一个在黑色中),当我单击按钮时,我必须等待2秒钟才能查看两个矩形的颜色变化。 我先更改一个矩形的颜色,然后再更改下一个矩形的颜色。 我的问题是为什么我应该等待2秒?有没有一种方法可以动态更新矩形的颜色? 问题答案: 您正在UI线程上睡眠,该线程会阻止任何进一步的处理(包括刷新屏幕)。 如果需要延迟