我是JavaFX的新手,想知道是否有办法将css文件分配给整个JavaFX项目/场景。目前,我必须将样式表应用于我想用css设置样式的每个元素。我正在使用IntelliJ和Scene Builder 2.0。我已经尝试在我的Main类中添加样式表,start方法如下所示,但它似乎没有达到预期的效果。
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
Parent root = FXMLLoader.load(getClass().getResource("JavaFXTest.fxml"));
primaryStage.setTitle("JavaFX Test");
primaryStage.setScene(new Scene(root, 300, 275));
root.getStylesheets().add("@../styling/styles.css");
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
答案 0 :(得分:2)
我意识到这是css文件路径的问题。我改成了:
root.getStylesheets().add("styling/styles.css");
并取得了预期的效果。这样我就不需要手动将样式表添加到UI中的每个元素,而是现在可以在整个场景中使用。只需根据正常的css约定声明您的类/ id,即可添加样式。
答案 1 :(得分:0)
您可以在场景中添加样式表:
/styling/styles.css
在上面的示例中,样式表位于App\Http\Controllers
相对于源根目录。