2014-04-28 5 views
5

Ich muss ein JavaFX 2.2 TreeView-Steuerelement in einem größeren Scrollpanel verwenden, das mehrere andere Elemente enthält, die nicht Teil der Treeview sind. Das Problem besteht darin, dass TreeView über eine eigene Scroll-Oberfläche verfügt. Hat jemand ein Beispiel dafür, wie man den eingebauten Scroll-Bereich abschalten kann, so dass der TreeView so groß wird wie die enthaltenen Items?JavaFX TreeView Scroll-Fensterbereich entfernen

Antwort

0

Während es derzeit nicht möglich ist, die Bildlaufleisten zu entfernen, ist es möglich, sie größtenteils mit CSS auszublenden.

.your-selector *.column-header-background *.show-hide-columns-button, 
 
.your-selector *.scroll-bar:vertical *.increment-button, 
 
.your-selector *.scroll-bar:vertical *.decrement-button, 
 
.your-selector *.scroll-bar:vertical *.increment-arrow, 
 
.your-selector *.scroll-bar:vertical *.decrement-arrow { 
 
    -fx-background-color: null; 
 
    -fx-background-radius: 0; 
 
    -fx-background-insets: 0; 
 
    -fx-padding: 0; 
 
    -fx-shape: null; 
 
} 
 

 
.your-selector *.scroll-bar:horizontal, 
 
.your-selector *.scroll-bar:horizontal *.track, 
 
.your-selector *.scroll-bar:horizontal *.track-background, 
 
.your-selector *.scroll-bar:horizontal *.thumb, 
 
.your-selector *.scroll-bar:horizontal *.increment-button, 
 
.your-selector *.scroll-bar:horizontal *.decrement-button, 
 
.your-selector *.scroll-bar:horizontal *.increment-arrow, 
 
.your-selector *.scroll-bar:horizontal *.decrement-arrow { 
 
\t -fx-base: transparent; 
 
\t -fx-background-color: white; 
 
}

0

Das ist eine gute Frage.

Ich denke, Sie müssen Ihre eigenen TableViewSkin erstellen, die nicht von der VirtualContainerBase abgeleitet ist. VirtualContainerBase verwaltet eine VirtualFlow, die Sie nicht möchten, wenn das gesamte TreeView angezeigt werden soll. Ich glaube, das ist eine ziemlich schwierige Sache, die man allgemein innerhalb der JavaFX 2/8 API erreichen kann, und es gibt keine Beispiellösung oder weitere Vorschläge, wie man dies zur Zeit erreichen könnte.

Es ist eine bestehende Feature-Request für eine solche Funktionalität in der JavaFX issue tracker:

  • RT-26631 "Allow Scrollen auf Steuerelemente wie Tabelle, Liste, Baum und TreeTable deaktiviert sein".

Derzeit ist die Funktion nicht für die Implementierung in einer zukünftigen Version geplant.