Message
一个 MessageDialog 是一个模态对话框,旨在向用户显示消息,包含一个 OK 按钮以关闭对话框。在用户与之交互或由于超时而关闭之前,它会阻止应用程序执行。
用法
使用静态 showMessageDialog 方法显示基本消息。
OptionDialog.showMessageDialog("你好,世界!");
要对对话框的外观和行为进行更多控制,可以直接创建 MessageDialog 实例。
MessageDialog dialog = new MessageDialog(
"你好,世界", "你好,世界", MessageDialog.MessageType.INFO);
dialog.setBlurred(true);
dialog.setAlignment(MessageDialog.Alignment.TOP);
dialog.show();
消息类型
MessageDialog 支持以下消息类型。当您配置一种类型时,对话框将在消息旁边显示一个图标,并且对话框的主题会根据 webforJ 设计系统规则进行更新。
PLAIN:不带图标显示消息,使用默认主题。ERROR:在消息旁边显示错误图标,应用错误主题。QUESTION:在消息旁边显示问号图标,使用主要主题。WARNING:在消息旁边显示警告图标,应用警告主题。INFO:在消息旁边显示信息图标,使用信息主题。
在以下示例中,代码配置了一个类型为 WARNING 的消息对话框,具有自定义标题和消息。
显示代码
- MessageDialogTypeView.java
对话框和按钮主题
默认情况下,对话框根据消息类型确定主题。您可以使用 setTheme(Theme theme) 方法自定义对话框的主题,并独立使用 setButtonTheme(ButtonTheme theme) 方法调整按钮主题,以创建不同的变体。
按钮文本
您可以使用 setButtonText(String text) 配置对话框按钮的文本。
OptionDialog.showMessageDialog("你好,世界!", "标题", "明白了");
HTML 处理
默认情况下,消息对话框处理和渲染 HTML 内容。您可以通过配置对话框为显示原始文本来关闭此功能。
MessageDialog dialog = new MessageDialog(
"<b>你好,世界</b>", "你好,世界", MessageDialog.MessageType.INFO);
dialog.setRawText(true);
dialog.show();
超时
MessageDialog 允许您设置超时时间,超时后对话框将自动关闭。此功能适用于非关键通知或不需要用户立即交互的信息。
您可以使用 setTimeout(int timeout) 方法为对话框配置超时。超时时间以秒为单位。如果在指定时间内没有用户交互,对话框将自动关闭。
MessageDialog dialog = new MessageDialog("此对话框即将超时", "超时");
dialog.setTimeout(2);
dialog.show();
最佳实践
- 清晰简洁的消息:保持消息简短,避免技术术语;使用用户友好的语言。
- 适当的消息类型:
- 对于关键问题使用
ERROR。 - 对于警示通知使用
WARNING。 - 对于一般信息使用
INFO。
- 对于关键问题使用
- 一致的主题:使对话框和按钮的主题与应用程序的设计一致。
- 谨慎使用超时:为非关键通知设置超时,并确保用户有足够的时间阅读消息。
- 避免过度使用:尽量减少使用对话框,以防止用户感到沮丧,保留用于需要用户操作或确认的重要消息。