Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javafx滚动窗格无法更改背景_Java_Javafx - Fatal编程技术网

Javafx滚动窗格无法更改背景

Javafx滚动窗格无法更改背景,java,javafx,Java,Javafx,我尝试使用: scrollPane.setStyle.scroll-pane>.viewport{-fx背景色:红色;} 但它不起作用。我很确定我做css的事情是错的。ScrollPane有一个AnchorPane作为他的孩子。您必须设置此特定主播的背景色。节点的样式不能有选择器,只能有CSS规则。换句话说,setStyle fx背景色:红色;虽然它可能不会达到你想要的效果,但它是有效的 但是,您可以执行以下操作:从CSS选择器获取视口 滚动窗格直到阶段实现后才有其结构。一旦舞台显示出来,.vi

我尝试使用:

scrollPane.setStyle.scroll-pane>.viewport{-fx背景色:红色;}


但它不起作用。我很确定我做css的事情是错的。

ScrollPane有一个AnchorPane作为他的孩子。您必须设置此特定主播的背景色。

节点的样式不能有选择器,只能有CSS规则。换句话说,setStyle fx背景色:红色;虽然它可能不会达到你想要的效果,但它是有效的

但是,您可以执行以下操作:从CSS选择器获取视口


滚动窗格直到阶段实现后才有其结构。一旦舞台显示出来,.viewport子体就会出现:

stage.setOnShown(e ->
    scrollPane.lookup(".viewport").setStyle("-fx-background-color: red;"));
或者,您可以在单独的样式表中指定原始选择器和规则:

.scroll-pane > .viewport  { -fx-background-color: red; }
然后将其添加到场景的样式表列表中:

scene.getStylesheets().add(
    getClass().getResource("styles.css").toString());

样式不能有选择器,只有CSS规则。换句话说,setStyle fx背景色:红色;虽然它可能不会达到你想要的效果,但它是有效的。但是,您可以通过CSS选择器来获取视口。现在我对查找很感兴趣,但是我会把什么作为参数,因为我不知道视口的id是什么?查找方法会使用CSS选择器来选择括号括起来的规则集之前的部分。在这种情况下,.viewport可能就足够了。立即尝试了该方法,但每次都返回null。直到实现阶段,滚动窗格才有其结构。尝试stage.setOnShowne->scrollPane.lookup.viewport.setStyle-fx-background-color:red;;。当然,也可以在单独的样式表中指定所有内容,并将其添加到场景的样式表列表中。视口是stackpane,而不是anchorpane。要想成为一个有效的问题,你应该展示如何做到这一点——从你所写的内容来看,这一点并不明显。@James\u你是对的——我以后会采纳你的建议。没关系,你把我的答案设为没用。。。我只是想帮助我的兄弟,但我没有足够的时间。我希望,这不会再发生了。干杯