2014-12-05 56 views
1

是否有任何方法使分隔窗格中的分隔線透明?SplitPane中的透明分隔線

我曾嘗試以下方法

.split-pane *.split-pane-divider { 
-fx-padding: 0 1 0 1; 
} 

但它不工作。

此外,我寧願從java代碼中執行它,如果可能的話。

splitPane.setStyle(""); 

回答

6

使用CSS:

.split-pane:horizontal > .split-pane-divider { 
    -fx-background-color: transparent; 
} 
.split-pane:vertical > .split-pane-divider { 
    -fx-background-color: transparent; 
} 

通過代碼,你需要找到分頻器和風格適用於它。由於有這個問題並沒有API,一個簡單的方法是用查找,顯示該階段之後:

@Override 
public void start(Stage primaryStage) {  
    SplitPane split = new SplitPane(); 
    ... 
    Scene scene = new Scene(split); 
    primaryStage.setScene(scene); 
    primaryStage.show(); 

    Node divider = split.lookup(".split-pane-divider"); 
    if(divider!=null){ 
     divider.setStyle("-fx-background-color: transparent;"); 
    } 
} 
1

取決於你實際上要做的,

.split-pane-divider { 
    -fx-padding: 0 ; 
} 

可能會奏效。

爲什麼你想讓分隔線透明?這使用戶幾乎不可能調整窗格的部分大小。