getStyleClass().add()在我移动css文件后无效
我只是在重构我的程序,由于在单独的文件夹中排序文件等。。。我认识到,一些css样式的类被忽略了 例如:我在视图中添加了一个样式类,在标签中添加了第二个样式类,标签是视图的子级(view.getStyleClass().add(“myView”);)。 到目前为止,这种方法一直运作良好。现在应用视图的样式类,但不应用标签的样式类。两个样式类都在同一个css文件中 有人有主意吗 代码示例:getStyleClass().add()在我移动css文件后无效,css,javafx-2,javafx,Css,Javafx 2,Javafx,我只是在重构我的程序,由于在单独的文件夹中排序文件等。。。我认识到,一些css样式的类被忽略了 例如:我在视图中添加了一个样式类,在标签中添加了第二个样式类,标签是视图的子级(view.getStyleClass().add(“myView”);)。 到目前为止,这种方法一直运作良好。现在应用视图的样式类,但不应用标签的样式类。两个样式类都在同一个css文件中 有人有主意吗 代码示例: StyleManager.getInstance().addUserAgentStylesheet(cssFi
StyleManager.getInstance().addUserAgentStylesheet(cssFilePath);
view.getStyleClass().add("myView"); //will be applied
...
msgLabel.getStyleClass().add("myLabel"); //has no effect
msgLabel.setId("messageId");
CSS代码段:
.myView {
-fx-background-color: linear-gradient(#44bbff 0%, #0063d3 100%);
-fx-background-radius: 10;
-fx-border-style: none;
-fx-padding: 0 30 0 0;
-fx-effect: dropshadow(gaussian, #d9d9d9, 10, 0, 2, 2);
}
.myView:pressed {
-fx-background-color: linear-gradient(#1b82da 0%, #176dbc 100%);
}
.myLabel {
-fx-font-size: 32px;
-fx-text-fill: #ffffff;
-fx-effect: dropshadow(gaussian, #223377, 10, 0, 1, 1);
-fx-padding: 0;
}
更新:当我将标签样式类更改为以下代码时,将应用字体大小,但不会应用文本填充效果
.label .myLabel {
-fx-font-size: 32px;
-fx-text-fill: #ffffff;
-fx-effect: dropshadow(gaussian, #223377, 10, 0, 1, 1);
-fx-padding: 0;
}
确保您的项目中只有一个css类,并确保“Clean and Build”是正确的。非常感谢。但是,有没有一种方法可以拥有多个css文件?那么,这是由加载每个文件的那一刻引起的问题吗?如果我编写某种类型的资产管理器,在程序启动时加载所有css文件会怎么样?不,您可以有多个css文件。我只是想确保您没有忘记删除重构文件的旧版本。并且需要“Clean/Build”来确保重构后的css到达实际的jar/类位置。