如何解决如何实现 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”。谁能给我一个简单的例子来说明如何创建这个监听器,这样当我点击 OK 按钮时,对话框就会关闭?
解决方法
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 });
https://www.w3schools.com/java/java_lambda.asp
,这应该会在点击按钮时关闭对话框。
ConfirmDialog dialog = new ConfirmDialog("Meeting starting",e -> e.getSource().close());
Button button = new Button("Open dialog");
button.addClickListener(event -> dialog.open());
add(button,dialog);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。