private className <! - ? - > instanceName,javafx TableView + TableColumn

时间:2014-12-05 05:48:37

标签: java javafx declaration

之前可能已经回答过很多次了。

完全不理解我所寻找的东西,而我的java经验大概是几个星期

我尝试在javafx中构建应用程序,我使用的是scenebuilder,我想要表格,某种网格组件,我可以动态声明这个大小。

无法确定如何添加行或列或使用数据填充表格:http://clip2net.com/s/jpGKh0

所以,我去了scenebuilder生成的Controller代码,它说:

@FXML
private TableColumn<?, ?> col2;

@FXML
private TableView<?> table;

@FXML
private TableColumn<?, ?> col1;

<?><?,?>声明......这是什么?如何使用table,col1,col2来实现表格?

1 个答案:

答案 0 :(得分:0)

?:在java中被称为无界通配符。它是java泛型中使用的通配符

示例:List<?> myList.

这里?用来表示myList包含某种对象,我不关心它是什么类型。 因此,您无法向myList添加任何类型的任何对象。因此,您无法填充声明为TableView<?>的TableView,因为要填充表视图,您必须添加到子列表中,这将是您无法添加的ObservableList<?>

因此,您应该知道要放在表中的内容(比如学生),然后将表声明为TableView。然后你会说:

private TableColumn<Student, String> nameCol;
private TableColumn<Student, Integer> idCol;

看一下本教程:http://docs.oracle.com/javafx/2/ui_controls/table-view.htm