Java 什么是Color.web(“0x0001FF”,1.0)以及为什么我在背景中使用蓝色?

Java 什么是Color.web(“0x0001FF”,1.0)以及为什么我在背景中使用蓝色?,java,javafx,Java,Javafx,我是JavaFx新手,但对Java有很好的了解。现在基本上我正在通过这个项目学习: package com.lesson; import javafx.stage.Stage; import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.paint.Color; import javafx.scene.control.Titled

我是JavaFx新手,但对Java有很好的了解。现在基本上我正在通过这个项目学习:

package com.lesson;

import javafx.stage.Stage;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.control.TitledPane;
import javafx.scene.control.Button;
import javafx.scene.control.Accordion;

public class MyProgram extends Application{

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

    @Override
    public void start(Stage primaryStage){
        primaryStage.setTitle("My anme is rajedra");

        Group group=new Group();
        Scene s=new Scene(group, 400, 400, Color.web("0x0001FF", 1.0));
        TitledPane tp1=new TitledPane("T1", new Button("B1"));
        TitledPane tp2=new TitledPane("T2", new Button("b2"));
        TitledPane tp3=new TitledPane("T3", new Button("b3"));
        TitledPane tp4=new TitledPane("T4", new Button("b4"));

        Accordion accordion=new Accordion();
        accordion.getPanes().addAll(tp1, tp2, tp3);
        group.getChildren().add(accordion);
        primaryStage.setScene(s);
        primaryStage.show();
    }
}
但我不知道到底是什么颜色。这里是web0x0001FF,1.0吗?运行此程序后,我发现背景颜色显示为蓝色。但我没有输入任何蓝色或任何代码,倾向于显示。这是什么意思?请帮忙

谢谢你的帮助


谢谢

0001FF是蓝色的十六进制代码:


因此,您的背景显示为蓝色。

这是一种由十六进制0001FF定义的颜色,不透明度为100%1.0

为什么它是蓝色的

因为十六进制颜色是这样写的:

00      01      FF
^^      ^^      ^^
RED    GREEN   BLUE
十进制中,00是0,FF是255

在RGB中,每个颜色值可以从0无颜色变为255全色

因此,您将其填充为255蓝色100%,1绿色略微修改蓝色,几乎没有视觉差异,0红色。

检查相关的颜色

Color.web方法的第一个参数是颜色的RGB红、绿、蓝值

"0x0001FF"
这有0x00红色分量、0x01绿色分量几乎为零和完整的0xff蓝色分量

Color.web的第二个参数是不透明度,范围从0.0透明到1.0不透明,这是您的情况

因此,结果颜色为蓝色。

<0x0001ff是RGB中颜色的十六进制表示:每个颜色分量1字节。 所以是

0x00 0/255表示红色

0x01 1/255表示绿色

蓝色为0xff 255/255

这就是为什么它是蓝色的


1.0保留不透明度。0.0是完全透明的,1.0是不透明的。您可以指定介于两者之间的任何值。

好的。感谢您的回答,这里的颜色是1.0。web0x0001FF,1.0。这就是不透明度:如果该数字较低,颜色将更透明。检查javadoc。好的。谢谢你的回答,这里有什么是1.0和Color.web0x0001FF,1.0。它包含在答案中,请在复制粘贴评论到所有答案之前阅读整个答案。好的。谢谢你的回答,这里有什么是1.0和Color.web0x0001FF,1.0。@nitinsharma它写在第一行,1.0表示100%不透明度。