Как использовать новое окно, чтобы пользователь мог вводить данные об элементе в списке? - PullRequest
0 голосов
/ 14 апреля 2019

В моем главном окне есть список элементов, которые пользователь может добавить. Я хочу, чтобы при каждом добавлении элемента открывалось диалоговое окно, в которое можно было бы добавить информацию об этом элементе, например его имя и т. Д., А затем он будет добавлен в список в главном окне со всеми предоставленными данными. Я также хотел бы, чтобы они могли щелкнуть по элементу позже и открыть тот же диалог, в котором они могут редактировать данные.

У меня возникают проблемы с выяснением, как это реализовать, главным образом в том, как перенести информацию из диалога обратно в главное окно, и в случае редактирования элемента, переносящего исходную информацию, уже имеющуюся в списке, в диалоговое окно для это будет отредактировано. Что было бы хорошим способом сделать это?

Я уверен, что есть общий метод для этого, так как это очень распространенная функция во многих программных приложениях, я просто не смог найти руководство, как это сделать.

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

@FXML
private ListView<String> taskListView;

public void addTask() {

    taskListView.getItems().add("New");

}

public void editTask() throws Exception {

    Parent root = FXMLLoader.load(getClass().getResource("EditWindowView.fxml"));

    Stage stage = new Stage();
    Scene scene = new Scene(root);

    stage.initStyle(StageStyle.UNDECORATED);
    stage.setTitle("Edit Task");
    stage.setScene(scene);
    stage.show();

}

Я открываю диалог с помощью метода editTask, так что именно здесь я бы вставил информацию, которую нужно переносить туда-сюда, я просто не уверен, как это сделать.

Я знаю, что это довольно широкий вопрос, поэтому, пожалуйста, потерпите меня. Даже если бы кто-то мог предоставить ссылку на учебник, который учит что-то подобное, это было бы очень ценно. Если вам нужна дополнительная информация от меня, пожалуйста, дайте мне знать. Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...