2014-04-24 116 views

回答

5

你的CSS選擇是錯誤的任何其他方面。

.scroll-pane:corner 

選擇激活僞類狀態「corner」的類爲「scroll-pane」的節點。根據css documentation,滾動窗格沒有「角」僞類。

.scroll-pane:corner > .viewport 

將選擇與曾與類「滾動窗格」和與具有僞類狀態「角」該父節點的(立即)父節點類「視口」的節點激活。所以,如果有的話,你會在這裏選擇視口。

你需要的CSS是

.scroll-pane > .corner {  
    -fx-background-color: #191A19 ; 
} 

也許看一看在CSS選擇器,如一個在w3schools

更新完整的例子,通用教程:

import javafx.application.Application; 
import javafx.scene.Scene; 
import javafx.scene.control.ScrollPane; 
import javafx.scene.control.ScrollPane.ScrollBarPolicy; 
import javafx.scene.control.TextArea; 
import javafx.scene.layout.BorderPane; 
import javafx.stage.Stage; 

public class ScrollPaneStyledCorner extends Application { 

    @Override 
    public void start(Stage primaryStage) { 
     BorderPane root = new BorderPane(); 
     ScrollPane scrollPane = new ScrollPane(); 
     scrollPane.setPrefHeight(200); 
     scrollPane.setPrefWidth(200); 

     TextArea textArea = new TextArea(System.getProperty("javafx.version")); 
     scrollPane.setContent(textArea); 
     scrollPane.setVbarPolicy(ScrollBarPolicy.ALWAYS); 
     scrollPane.setHbarPolicy(ScrollBarPolicy.ALWAYS); 
     root.setCenter(scrollPane); 

     Scene scene = new Scene(root); 
     scene.getStylesheets().add(getClass().getResource("scrollPaneCorner.css").toExternalForm()); 
     primaryStage.setScene(scene); 
     primaryStage.show(); 
    } 

    public static void main(String[] args) { 
     launch(args); 
    } 
} 

scrollPaneCorner.css:

.scroll-pane > .corner {  
    -fx-background-color: #191A19 ; 
} 

enter image description here

+1

這將是情況下,如果我沒有java的8但因爲我曾提升JRE到這一點,你在上面所示的代碼不按照上個月發佈的[this](https://community.oracle.com/thread/3538169)發佈的內容工作 – user3211415

+0

此示例在Java 1.8.0_144版本中正常工作。 – trashgod

0

它的工作原理:

.corner {  
    -fx-background-color: #363636 ; 
}