2016-04-14 60 views
0

TitedPane'in başlığını GridPane boyutuna göre boyutlandırmanın bir yolu var mı? İşte Javafx TitledPane yeniden boyutlandırma Üstbilgi

enter image description here

Sadece bir css dosyasında TitlePane başlığına sabit bir boyuta ayarlayabilirsiniz

 // --- GridPane container 
    final Label label = new Label("N/A"); 
    TitledPane gridTitlePane = new TitledPane(); 
    GridPane grid = new GridPane(); 

    gridTitlePane.setStyle("-fx-background-color: #336699;"); 
    gridTitlePane.setPrefSize(parentGrid.getPrefWidth(),parentGrid.getPrefHeight()); 
    gridTitlePane.setText("Statistik"); 
    gridTitlePane.setExpanded(false); 
    //grid.setVgap(4); 
    grid.setPadding(new Insets(5, 5, 5, 5)); 
    grid.add(new Label("To: "), 0, 0); 
    grid.add(new TextField(), 1, 0); 
    grid.add(new Label("Cc: "), 0, 1); 
    grid.add(new TextField(), 1, 1); 
    grid.add(new Label("Subject: "), 0, 2); 
    grid.add(new TextField(), 1, 2); 
    grid.add(new Label("Attachment: "), 0, 3); 
    grid.add(label,1, 3); 
                gridTitlePane.setStyle(""); 
    gridTitlePane.setContent(grid); 

    HBox hbox = new HBox(); 
    //HBox.setHgrow(gridTitlePane,Priority.ALWAYS); 
    //HBox.setHgrow(grid,Priority.ALWAYS); 
    hbox.getChildren().setAll(gridTitlePane); 

cevap

2

TitledPane kodudur:

.titled-pane > .title { 
    -fx-pref-height: 36.0; 
} 

veya ayarlayabileceğinizNode

işlevini kullanarak yükseklik
Platform.runLater(() -> { 
      Pane title = (Pane) titlePane.lookup(".title"); 
      title.setPrefHeight(value); 
      //or 
      title.prefHeightProperty().bind(gridPane.heightProperty()); 
      }); 
+0

Bunu beğenemiyorum 'gridTitlePane.setStyle ("- fx-width: 100%", "- fx-height: 100%") '? Ve bölmeyi IntelliJ fikir çıktı penceresi gibi çalışma zamanında yeniden boyutlandırabilir miyim? – alhelal