Я не могу заполнить Javafx TableView с помощью fxml - PullRequest
0 голосов
/ 07 декабря 2018

Ничто не похоже на что-то не так с кодом, но таблица не заполняется. Тот же код работает хорошо с другим местом.

public class Test implements Initializable {
@FXML
TableView sort_view;
@FXML
TableColumn sort_id, sort_pname, sort_price, sort_quantity, sort_total;
@Override
public void initialize(URL location, ResourceBundle resources) {
    final ObservableList<Sort> data =
            FXCollections.observableArrayList();
    Sort sort;
    SalesDb db = new SalesDb();
    ResultSet rs = db.sortProduct();

    try {
        while (rs.next()) {
            int id = rs.getInt("ID");
            String productName = rs.getString("ProductName");
            String productPrice = rs.getString("ProductPrice");
            String quantity = rs.getString("Quantity");
            String total = rs.getString("Total");

            sort = new Sort(Integer.toString(id),productName,productPrice,quantity,total);
            data.add(sort);
            System.out.println(sort.getId()+","+sort.getProductName()+","+sort.getPrice()+","+sort.getQuantity()+","+sort.getTotal());
        }
    }catch(Exception  e){
        System.out.println("There is an Exception.");
        System.out.println(e.getMessage());
    }
    sort_id.setCellValueFactory(new PropertyValueFactory<Sort, String>("id"));
    sort_pname.setCellValueFactory(new PropertyValueFactory<Sort, String>("productName"));
    sort_price.setCellValueFactory(new PropertyValueFactory<Sort, String>("price"));
    sort_quantity.setCellValueFactory(new PropertyValueFactory<Sort, String>("quantity"));
    sort_total.setCellValueFactory(new PropertyValueFactory<Sort, String>("total"));

    sort_view.getItems().add(data);


}

}

, и мой файл fxml выглядит следующим образом.

enter image description here

Моя таблица не заполнена, в чем может быть причина.Таблица выглядит следующим образом ..

enter image description here

пожалуйста, посмотрите, в чем проблема ...

1 Ответ

0 голосов
/ 09 декабря 2018

Это было просто вызвано неправильным использованием соглашения об именах, потому что было несколько элементов, я должен был использовать data.addAll (sort) вместо data.add (sort).

...