我是Java的新手,正在研究TableView
的教程,我不明白代码的一些问题。
我收到错误消息:
getColumns()的类型是错误的,其中S是类型变量S. 扩展在TableView
类中声明的Object
感谢您提出任何建议或帮助
罗杰
table = new TableView<>();
data = getInitialTableData();
table.setItems(data);
TableColumn titleCol = new TableColumn("Title");
titleCol.setCellValueFactory(new PropertyValueFactory<Book, String>("title"));
TableColumn authorCol = new TableColumn("Author");
authorCol.setCellValueFactory(new PropertyValueFactory<Book, String>("author"));
table.getColumns().setAll(titleCol, authorCol);
table.getSelectionModel().selectedIndexProperty().addListener(new RowSelectChangeListener());
答案 0 :(得分:0)
您需要指定要尝试填充TableView
的项目类型,请参阅documentation
TableView<Person> table = new TableView<Person>();
答案 1 :(得分:0)
遵循Oracle的this教程。
您的代码必须如下:
TableColumn<Book,String> titleCol = new TableColumn<Book,String>("Title"); titleCol.setCellValueFactory(new PropertyValueFactory<Book, String>("title"));
最佳改进:
TableColumn<Book,String> titleCol = new TableColumn<>("Title"); titleCol.setCellValueFactory(new PropertyValueFactory<>("title"));