java消息对话框怎么添加监视器
时间: 2024-03-11 18:50:34 浏览: 17
要为Java消息对话框添加监视器,可以使用Java Swing中的JOptionPane类。以下是一个简单的示例代码,可以在消息对话框上添加监视器:
```
import javax.swing.JOptionPane;
import javax.swing.event.AncestorListener;
public class DialogExample {
public static void main(String[] args) {
String[] options = {"Yes", "No", "Maybe"};
int choice = JOptionPane.showOptionDialog(null, "Do you like Java?",
"Java Question", JOptionPane.YES_NO_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE, null, options, options[2]);
// 添加监视器
JOptionPane pane = new JOptionPane();
AncestorListener listener = new AncestorListener() {
public void ancestorAdded(javax.swing.event.AncestorEvent event) {
System.out.println("Dialog opened.");
}
public void ancestorRemoved(javax.swing.event.AncestorEvent event) {
System.out.println("Dialog closed.");
}
public void ancestorMoved(javax.swing.event.AncestorEvent event) {}
};
pane.addAncestorListener(listener);
// 处理用户的选择
switch (choice) {
case JOptionPane.YES_OPTION:
System.out.println("You like Java!");
break;
case JOptionPane.NO_OPTION:
System.out.println("You don't like Java.");
break;
case JOptionPane.CANCEL_OPTION:
System.out.println("You're not sure about Java...");
break;
default:
System.out.println("You didn't choose anything!");
break;
}
}
}
```
在这个示例中,我们创建了一个JOptionPane对象,并添加了一个AncestorListener监视器。当用户打开或关闭对话框时,监视器将显示相应的消息。注意,JOptionPane.showOptionDialog()方法将返回用户的选择,我们可以使用它来处理用户的输入。