Domanda

In swing, potremmo usare setResizeWeight() su JSplitPane per determinare quale parte del SplitPane ha ricevuto lo spazio disponibile.C'è un metodo equivalente in JAVAFX 2.2?Posso trovare solo il metodo setDividerPosition() che non fa davvero quello che voglio (concesso potrei chiamarlo manualmente ogni volta che le dimensioni cambiano, ma vorrei evitarlo se possibile.)

Potrei anche chiamare setResizableWithParent(false), ma di nuovo che non fornisce davvero il tipo di controllo che ho dopo.

È stato utile?

Soluzione

Mentre si passa attraverso l'API per SplitPane, ho trovato questa funzione statica - SetResizableWithParent (root, boolean.false) che fornisce funzionalità simili come setResizeWeight() in jsplitpane.

    SplitPane sp = new SplitPane();
    final StackPane sp1 = new StackPane();
    sp1.getChildren().add(new Button("Button One"));
    final StackPane sp2 = new StackPane();
    sp2.getChildren().add(new Button("Button Two"));
    final StackPane sp3 = new StackPane();
    sp3.getChildren().add(new Button("Button Three"));
    sp.getItems().addAll(sp1, sp2, sp3);
    sp.setDividerPositions(0.3f, 0.6f, 0.9f);

    SplitPane.setResizableWithParent(sp1, Boolean.FALSE);

    primaryStage.setScene(new Scene(sp, 300, 200));
    primaryStage.setTitle("Welcome to JavaFX!"); 
    primaryStage.sizeToScene(); 
    primaryStage.show();
.

setResizableWithParent può imitare i valori di setResizeWeight(0) e setResizeWeight(1) ma assolutamente nulla in mezzo.Fondamentalmente, il nodo può essere fluido o fissato.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top