Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/37.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
未使用CSS设置JavaFX背景颜色_Java_Css_Javafx - Fatal编程技术网

未使用CSS设置JavaFX背景颜色

未使用CSS设置JavaFX背景颜色,java,css,javafx,Java,Css,Javafx,我最近从Swing的切换开始使用JavaFX,但我遇到了一个问题,基本上我添加的样式表中的CSS没有被添加,只是保持不变,但是从我所读到的内容来看,它应该可以工作 主文件: package com.callum.launch; import com.callum.construct.Window; public class Main { public static void main(String[] args) { Window.Create("Call

我最近从Swing的切换开始使用JavaFX,但我遇到了一个问题,基本上我添加的样式表中的CSS没有被添加,只是保持不变,但是从我所读到的内容来看,它应该可以工作

主文件:

package com.callum.launch;

import com.callum.construct.Window;

public class Main 
{
    public static void main(String[] args) 
    {
        Window.Create("Callum's Program", 980, 640, true);
        Window.launch(Window.class, args);
    }
}
窗口文件:

package com.callum.construct;

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.stage.Stage;

public class Window extends Application
{
    protected static String  WindowTitle;
    protected static int     WindowWidth;
    protected static int     WindowHeight;
    protected static boolean WindowResizable;

    public static void Create(String title, int width, int height, boolean resizable)
    {
        WindowTitle     = title;
        WindowWidth     = width;
        WindowHeight    = height;
        WindowResizable = resizable;
    }

    @Override
    public void start(Stage stage) throws Exception 
    {
        Group root   = new Group();
        Scene window = new Scene(root, WindowWidth, WindowHeight);
        stage.setScene(window);

        stage.setTitle(WindowTitle);
        stage.setResizable(WindowResizable);
        stage.setMinWidth(WindowWidth);
        stage.setMinHeight(WindowHeight);

        window.getStylesheets().add("com/callum/construct/stylesheet.css");

        stage.show();
    }
}
样式表:

.root
{
    -fx-background-color:#000;
}
在控制台中找不到样式表和错误/警告。

您尝试过吗
Window.class.getResourcestylesheet.css.toExternalForm

您正在使用JavaFX应用程序是吗?尝试JavaFXML应用程序。创建GUI更容易。 ;

:该属性在中定义。因此,您需要根元素是Region的某个子类,例如Pane:


我觉得很好。。尝试过简单地更改颜色吗?是的,它仍然会使用默认的白色背景颜色。您正在获取场景窗口的样式表,而不是组根,请尝试获取根的样式表,或者简单地将CSS文件中的.root更改为.windowStill似乎不会影响任何内容。很遗憾,仅链接的答案不受欢迎,就这样。
    Pane root   = new Pane();
    Scene window = new Scene(root, WindowWidth, WindowHeight);