我正在使用JavaFX应用程序,但是无法获取要应用的样式表。
我的代码:
public class JavaFX extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
//set up the stage
primaryStage.initStyle(StageStyle.UNDECORATED);
primaryStage.setMaximized(true);
Group root = new Group();
root.setId("root");
Scene scene = new Scene(root);
primaryStage.setScene(scene);
scene.getStylesheets().add(JavaFX.class.getResource("styling.css").toExternalForm());
//Get the screensize
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
double screenX = screenSize.getWidth();
double screenY = screenSize.getHeight();
//Text objects
Text text = new Text();
text.setId("text");
text.setText("Test");
text.setY(50);
//Add all objects to the root group
root.getChildren().add(text);
//Show the stage
primaryStage.show();
//Calculate Positions of all objects
text.setX((screenX /2) - text.getBoundsInParent().getWidth());
我的样式表:
#text {
-fx-font-size: 50px;
}
CSS文件与java文件位于同一软件包中。
任何帮助将不胜感激!
答案 0 :(得分:1)
您的代码正确应用了CSS,至少我已经检查了您的字体大小和-fx-font-size:500px;和“文本”按预期更改。请再次检查您的styling.css文件。 (此外,您始终可以检查已编译的内容,并查看jar中的实际内容,以检查实际提取到以后运行的内容中的内容)
但是,最可能的是,也许您有重复的具有相同名称的css文件,一个覆盖另一个。例如。一个位于资源文件夹中,另一个与.java文件位于同一位置