我正在使用JavaFX11。我有一个带有mp3文件列表的TableView。在使用箭头键滚动时,我看到的是奇怪的行为。当我到达TableView中的最后一个“可见”项并按下向下箭头键时,聚焦的行将跳到几行,而不是仅一行。我提供了一张图片,以显示我要解释的内容。 我添加了一些代码,这些代码与我发布的图像不匹配,但是行为完全相同。
public class FXMLController implements Initializable {
@FXML
private TableView<Person> tableView;
@Override
public void initialize(URL url, ResourceBundle rb) {
TableColumn<Person, String> col1 = new TableColumn<>("Column 1");
col1.setCellValueFactory(new PropertyValueFactory<Person, String>("firstName"));
tableView.getColumns().add(col1);
TableColumn<Person, String> col2 = new TableColumn<>("Column 2");
col2.setCellValueFactory(new PropertyValueFactory<Person, String>("lastName"));
tableView.getColumns().add(col2);
List<Person> list = new ArrayList<Person>();
for (int x = 0; x < 50; x++) {
Person p = new Person();
p.setFirstName("First Name "+x);
p.setLastName("Last Name "+x);
list.add(p);
}
ObservableList<Person> observableList = FXCollections.observableList(list);
tableView.setItems(observableList);
}
Scene.fxml:
<VBox prefHeight="400.0" prefWidth="640.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.mycompany.tableviewtest.FXMLController">
<children>
<TableView fx:id="tableView" />
</children>
</VBox>