我创建了一个删除按钮,用于删除数据库和日历中的数据。但我想使用MessageBox来确保这不是一个错误的选择。但是我无法在我的MessageBox.WithYesButton()中添加2个动作,所以你知道我该怎么做吗? 这是我的代码:
remove.addClickListener(new Button.ClickListener() {
@Override
public void buttonClick(Button.ClickEvent event) {
for (CalendaringItem calendaringItem : calendaringList.getCalendarings()) {
MessageBox.createQuestion().withMessage("Do you want to delete this event ?").withYesButton(()
-> calendaringItem.delete(calendaringItem, name.getValue())).withNoButton().open();
//calendar.removeEvent(e);
}
window.close();
}
});
感谢您的帮助!
答案 0 :(得分:1)
MessageBox.createQuestion()
.withMessage("Do you want to delete this event ?")
.withYesButton( () -> {
calendaringItem.delete(calendaringItem, name.getValue());
//action
//action2 ...
})
.withNoButton().open();
更重要的是,您不必声明新的ClickListener。你可以这样做:
remove.addClickListener(event -> {
actionAfterButtonClick();
});