小绪
笔者在课设的时候遇到了必要的个性化TableView的需求。此前,笔者虽是使用过TableView,但未深入理解。起初认为,这个类会和其他UI控件诸如Label、Button、Menu一样方便个性化使用,像一些常见的方法如setText()会立即见效。后来到笔者使用的时候就发现不简单了。
后面笔者会谈到TableView之深
鉴于TableView算是二维的,本文章以TableView角度所说明的Cell的部分性质可以某种程度上涵盖在一维的ListView中的性质,
但,不涵盖零维的单独使用的不在ListView或TableView环境下的Cell
TableView的建立(赘)
通常该类都可以按照日常的办公应用中的表格概念来定位,同时也是表头加表单的结构。例常的,我们需要设有表头和表单。表单内容的对象类型就是在声明tableview的时候所指定的泛型类型
public class Person {
//本文使用的表内容的类例子,**省略必要的getter及setter**
private String name;
private String address;
private Integer age;
}
TableView<Person> tv = new TableView<>(/*data*/);//data为ObservableList<Person>
表头就是若干个列,使用TableColumn,前一个泛型对应表的泛型,后一个应为列内容对应的类型
TableColumn<Person, String> tc1 = new TableColumn<>("name");
TableColumn<Person, String> tc2 = new TableColumn<>