Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 标签的颜色被遗忘了_Java_Javafx_Javafx 2_Fxml_Scenebuilder - Fatal编程技术网

Java 标签的颜色被遗忘了

Java 标签的颜色被遗忘了,java,javafx,javafx-2,fxml,scenebuilder,Java,Javafx,Javafx 2,Fxml,Scenebuilder,我在SimpleJavaFX项目中观察到了以下问题。在NetBeans中,我创建了简单的FXML项目。它包含FXML文件 标签的颜色在FX场景生成器中正确显示,但如果使用场景生成器的预览功能,则会看到错误的标签颜色。我看到灰色后端有白色字体。如果我创建这个简单项目的构建,我会看到同样错误的颜色。这个问题的原因是什么?在我看来,颜色的正确定义不包括在构建中。 我用 Netbeans 8.1 JavaSDK8 64位 Windows 7 64位 提前感谢您获得预期结果的一些方法是: ~>1)如果

我在SimpleJavaFX项目中观察到了以下问题。在NetBeans中,我创建了简单的FXML项目。它包含FXML文件


标签的颜色在FX场景生成器中正确显示,但如果使用场景生成器的预览功能,则会看到错误的标签颜色。我看到灰色后端有白色字体。如果我创建这个简单项目的构建,我会看到同样错误的颜色。这个问题的原因是什么?在我看来,颜色的正确定义不包括在构建中。 我用

  • Netbeans 8.1
  • JavaSDK8 64位
  • Windows 7 64位

  • 提前感谢您

    获得预期结果的一些方法是:

    ~>1)如果您愿意保持这种风格,建议您这样做

    在SceneViewer中,使用内嵌css手动添加每个VBox或标签的背景色:

    -fx-background-color:white; 
    
    ~>2)最佳实践

    通过
    SceneViewer
    在每个VBox或标签上添加样式类,并为应用程序使用外部css文件:

       .styleClassName { 
    
            -fx-background-color:white; 
    
         }
    
    ~>3)

    您可以为每个VBox或标签添加唯一的id,并使用以下命令将其样式修改到Java代码中:

    elementID.setStyle(" -fx-background-color:white; ");
    
    提到:
    大多数JavaFX布局的默认背景色都是灰色的,因此您必须对其进行更改。

    恐怕SceneBuilder的效果不太好

    你在用这个

    从javadoc:

    底部输入颜色分量除以顶部输入颜色分量的倒数,以生成结果颜色

    因此,给定背景颜色分量
    B
    和文本颜色分量
    T
    ,输出
    p
    的分量计算如下:

    P = min(B / (1 - T), 1)
    
    (此处为范围
    [0,1]
    中的组件)

    用于
    标签
    文本颜色的颜色中没有一种颜色分量比
    0.13
    暗,因此
    B/(1-T)>=B/0.87
    表示任何含有
    (0.87,0.87,0.87)
    或更亮分量的背景颜色将显示为白色。JavaFX场景中的默认背景就是这种情况。因此,白色是预期的颜色

    也许您应该使用不同的
    blendMode
    或将
    AnchorPane
    背景更改为较暗的颜色,以查看文本的颜色:


    预期的输出是什么?在SceneBuilder中,我什么也看不到。这是预期的吗?预期的背景色是什么?预期的输出是在第一种情况下,我希望看到白色背景上的红色字体,在其他情况下,我希望看到白色背景上的蓝色字体。当我启动应用程序时,我看到灰色背景上的白色字体。预期输出是如何保存用于修改VBOX背景的css?您希望它如何更改?