Я пытаюсь создать почтовый клиент.Это вывод при открытии программы:
Как видите, единственная активированная кнопка - это Reply-All .Это связано с тем, что я не могу переслать или ответить на письмо, которое не выбрано, но я могу ответить на все письма в списке.Затем, если я удаляю все электронные письма, это вывод:
Все кнопки отключены (и это правильно).Теперь, если я изменю учетную запись, нажав Cambia Account , будет создан новый список сообщений электронной почты, но кнопка Reply-All не будет включена.Я предполагаю, что это потому, что слушатель только проверяет статус текущей почты, а не, если есть список их.Как я могу решить это?
Это код, управляющий частью, в которой я отключаю кнопки:
public void initModel(DataModel model) {
if (this.model != null) {
throw new IllegalStateException("Model can only be initialized once");
}
this.model = model;
model.currentEmailProperty().addListener((obs, oldEmail, newEmail) -> {
if (oldEmail != null) {
reply.setDisable(false);
forward.setDisable(false);
replyall.setDisable(true);
}
if (newEmail == null) {
reply.setDisable(true);
forward.setDisable(true);
replyall.setDisable(true);
} else {
reply.setDisable(false);
forward.setDisable(false);
replyall.setDisable(false);
}
});
}