未使用CSS设置JavaFX背景颜色
我最近从Swing的切换开始使用JavaFX,但我遇到了一个问题,基本上我添加的样式表中的CSS没有被添加,只是保持不变,但是从我所读到的内容来看,它应该可以工作 主文件:未使用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
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);