2015-11-28 109 views
1

我在Web上找不到任何示例,显示如何为JavaFXTableView制作分层头,因此我不提供任何代码。我只会发布我想要实现的图像。那就是:JavaFX中tableview的colspan和rowspan

enter image description here

它在许多应用非常需要有这样的表网格。不幸的是,我找不到JavaFX的任何例子。提前感谢您的帮助!

+1

看看这个问题,这应该有助于你[表头](http://stackoverflow.com/questions/10952111/javafx-2-0-table-with-多行表头) – Inge

回答

2

看来您在寻找nested columns

您可以将子列添加到主列以获取分层标题。 这里是一个小例子:

import javafx.application.Application; 
import javafx.scene.Scene; 
import javafx.scene.control.TableColumn; 
import javafx.scene.control.TableView; 
import javafx.stage.Stage; 

public class NestedColumns extends Application 
{ 
    @Override 
    public void start(Stage primaryStage) throws Exception 
    { 
     TableView<String> tableView = new TableView<String>(); 
     TableColumn<String, String> nameColumn = new TableColumn<>("Name"); 
     TableColumn<String, String> firstNameColumn = new TableColumn<>("First name"); 
     TableColumn<String, String> lastNameColumn = new TableColumn<>("Last name"); 
     nameColumn.getColumns().addAll(firstNameColumn, lastNameColumn); 

     tableView.getColumns().add(nameColumn); 

     Scene scene = new Scene(tableView); 
     primaryStage.setScene(scene); 
     primaryStage.show(); 
    } 

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