Я занимаюсь разработкой довольно простого приложения javafx, в котором есть несколько разных сцен. Моя первая сцена - добавить объект Show в общий связанный список, а затем во вторую сцену добавить исполнение одного из этих шоу к этому. объект (например, добавить утренник или вечернее представление к шоу Энни)
Я создал первую сцену и могу добавить Показать объекты в связанный список, но не могу заполнить табличное представление во второй сцене созданнымпоказывает пользователю, что нужно выбрать и добавить производительность
Вот так выглядит мой контроллер добавления шоу:
public class AddShowController {
@FXML private TextField titleField;
@FXML private TextField cirField,stlField, balField;
@FXML private Slider runTimeSlider;
@FXML private DatePicker startDatePicker, endDatePicker;
TheLinkedList<Show> showList = new TheLinkedList<>();
private static AddShowController instance;
public AddShowController() {
instance = this;
}
public static AddShowController getInstance(){
return instance;
}
public void addShowButtonPushed (ActionEvent e){
showList.addElement(new Show (titleField.getText(),
(int) runTimeSlider.getValue(),
startDatePicker.getValue().toString(),
endDatePicker.getValue().toString(),
cirField.getText(),
stlField.getText(),
balField.getText()));
}
Как вы можете видеть, я попытался создать экземпляр контроллера, поэтомуя мог получить доступ к связанному списку из контроллера производительности add, но не радостно.
Это контроллер производительности add:
public class AddPerfController {
@FXML private ChoiceBox perfTimeChoiceBox;
@FXML private TableView<Show> showTable;
@FXML private TableColumn<Show, String> titleColumn;
@FXML private TableColumn<Show, String> runTimeColumn;
@FXML private TableColumn<Show, String> startDateColumn;
@FXML private TableColumn<Show, String> endDateColumn;
@FXML private TableColumn<Show, String> cirTicketPriceColumn;
@FXML private TableColumn<Show, String> stlTicketPriceColumn;
@FXML private TableColumn<Show, String> balTicketPriceColumn;
private ObservableList<Show> showData = FXCollections.observableList(AddShowController.getInstance().showList);
public void initialize() {
perfTimeChoiceBox.getItems().addAll("Matinee","Evening");
perfTimeChoiceBox.setValue("Matinee");
titleColumn.setCellValueFactory(new PropertyValueFactory<>("title"));
runTimeColumn.setCellValueFactory(new PropertyValueFactory<>("runningTime"));
startDateColumn.setCellValueFactory(new PropertyValueFactory<>("startDate"));
endDateColumn.setCellValueFactory(new PropertyValueFactory<>("endDate"));
cirTicketPriceColumn.setCellValueFactory(new PropertyValueFactory<>("cirTicketPrice"));
stlTicketPriceColumn.setCellValueFactory(new PropertyValueFactory<>("stlTicketPrice"));
balTicketPriceColumn.setCellValueFactory(new PropertyValueFactory<>("balTicketPrice"));
showData.add(new Show("Annie", 100,"12/12/2019", "14/12/2019","10","15", "20"));
showTable.setItems(showData);
}