javaFX css 文本数组的样式不起作用
javaFX css styling for an array of text not working
我有一个 CSS 文件来设置我的应用程序 MusicPlayer 的样式。我正在尝试设置名为 sliderText 的 javafx.scene.text.Text 数组的样式。但是没有任何效果。即使当我使用 .text
时,它也会为除我的 sliderText 数组之外的所有其他文本设置样式。任何想法如何让这个工作?
谢谢
这是我的滑块文本声明=
public static javafx.scene.text.Text[] sliderText = new Text[10];
也是一般性问题,我如何在 javafx 和 CSS 中使用 .setID()?
我已尝试执行以下操作:
.text {
-fx-font-size: 32px;
-fx-font-family: "Arial Black";
-fx-fill: #818181;
-fx-effect: innershadow( three-pass-box , rgba(0,0,0,0.7) , 6, 0.0 , 0 , 2 );
}
这几乎改变了一切,除了我想要的
默认情况下,Text
objects have no style class attached to them。 (只有 Control
设置了默认样式 classes。)因此您的规则(适用于样式 class "text")将不适用于您的文本对象。
basic CSS tutorial for JavaFX 涵盖了所有这些,但简单地说,您需要做一些类似
的事情
for (Text text : sliderText) {
text.getStyleClass().add("text");
}
在构造函数或 start()
方法或初始化方法中(您没有为您的代码显示足够的上下文,让我无法了解您的应用程序是如何设置的)。
针对您的问题:
how do i use .setID() in both javafx and CSS?
你可以做到
someNode.setId("specialNode");
然后在CSS
#specialNode {
/* style rules for specialNode here.... */
}
Id 对于任何场景图中的单个节点都应该是唯一的。
我有一个 CSS 文件来设置我的应用程序 MusicPlayer 的样式。我正在尝试设置名为 sliderText 的 javafx.scene.text.Text 数组的样式。但是没有任何效果。即使当我使用 .text
时,它也会为除我的 sliderText 数组之外的所有其他文本设置样式。任何想法如何让这个工作?
谢谢
这是我的滑块文本声明=
public static javafx.scene.text.Text[] sliderText = new Text[10];
也是一般性问题,我如何在 javafx 和 CSS 中使用 .setID()?
我已尝试执行以下操作:
.text {
-fx-font-size: 32px;
-fx-font-family: "Arial Black";
-fx-fill: #818181;
-fx-effect: innershadow( three-pass-box , rgba(0,0,0,0.7) , 6, 0.0 , 0 , 2 );
}
这几乎改变了一切,除了我想要的
默认情况下,Text
objects have no style class attached to them。 (只有 Control
设置了默认样式 classes。)因此您的规则(适用于样式 class "text")将不适用于您的文本对象。
basic CSS tutorial for JavaFX 涵盖了所有这些,但简单地说,您需要做一些类似
的事情for (Text text : sliderText) {
text.getStyleClass().add("text");
}
在构造函数或 start()
方法或初始化方法中(您没有为您的代码显示足够的上下文,让我无法了解您的应用程序是如何设置的)。
针对您的问题:
how do i use .setID() in both javafx and CSS?
你可以做到
someNode.setId("specialNode");
然后在CSS
#specialNode {
/* style rules for specialNode here.... */
}
Id 对于任何场景图中的单个节点都应该是唯一的。