如何实现确认对话框
How to implement ConfirmDialog
ConfirmDialog 的简单示例表明:
ConfirmDialog dialog = new ConfirmDialog("Meeting starting",
"Your next meeting starts in 5 minutes", "OK", this::onOK);
Button button = new Button("Open dialog");
button.addClickListener(event -> dialog.open());
add(button, dialog);
这假定了一些我显然不具备的知识。即,如何实现“this::onOK”。谁能给我一个快速示例,说明如何创建此侦听器,以便当我单击“确定”按钮时,对话框就关闭?
this::onOK
是一个以 ConfirmEvent
作为参数的方法引用
https://docs.oracle.com/javase/tutorial/java/javaOO/methodreferences.html
实现方法如下所示:
private void onOK(ConfirmDialog.ConfirmEvent confirmEvent) {
}
您也可以将代码直接作为 lambda 表达式传递:
ConfirmDialog dialog = new ConfirmDialog("Meeting starting",
"Your next meeting starts in 5 minutes", "OK", e -> { // your code });
这应该会在单击按钮时关闭对话框。
ConfirmDialog dialog = new ConfirmDialog("Meeting starting",
"Your next meeting starts in 5 minutes", "OK", e -> e.getSource().close());
Button button = new Button("Open dialog");
button.addClickListener(event -> dialog.open());
add(button, dialog);
ConfirmDialog 的简单示例表明:
ConfirmDialog dialog = new ConfirmDialog("Meeting starting",
"Your next meeting starts in 5 minutes", "OK", this::onOK);
Button button = new Button("Open dialog");
button.addClickListener(event -> dialog.open());
add(button, dialog);
这假定了一些我显然不具备的知识。即,如何实现“this::onOK”。谁能给我一个快速示例,说明如何创建此侦听器,以便当我单击“确定”按钮时,对话框就关闭?
this::onOK
是一个以 ConfirmEvent
作为参数的方法引用
https://docs.oracle.com/javase/tutorial/java/javaOO/methodreferences.html
实现方法如下所示:
private void onOK(ConfirmDialog.ConfirmEvent confirmEvent) {
}
您也可以将代码直接作为 lambda 表达式传递:
ConfirmDialog dialog = new ConfirmDialog("Meeting starting",
"Your next meeting starts in 5 minutes", "OK", e -> { // your code });
这应该会在单击按钮时关闭对话框。
ConfirmDialog dialog = new ConfirmDialog("Meeting starting",
"Your next meeting starts in 5 minutes", "OK", e -> e.getSource().close());
Button button = new Button("Open dialog");
button.addClickListener(event -> dialog.open());
add(button, dialog);