📜  Java AWT对话框(1)

📅  最后修改于: 2023-12-03 14:42:13.262000             🧑  作者: Mango

Java AWT对话框

Java AWT(Abstract Window Toolkit)是Java自带的图形用户界面工具包,可以用来构建GUI应用程序。在Java AWT中,对话框是一种常用的窗口类型,用来显示一些提示信息或者要求用户输入一些数据。

对话框类型

Java AWT提供了几种对话框类型,其中最常用的有以下三种:

  • 消息对话框(Message Dialog):用来显示简单的信息,例如确认某个操作是否成功。
  • 输入对话框(Input Dialog):用来提示用户输入一些数据,例如输入用户名和密码。
  • 文件对话框(File Dialog):用来打开或者保存文件,需要用户选择文件的路径和名称。
创建对话框

在Java AWT中,可以使用Dialog类来创建对话框。首先需要创建Dialog对象,然后设置对话框的标题和类型,最后将对话框显示出来。以下是创建消息对话框的示例代码:

Dialog dialog = new Dialog(frame, "消息对话框", true);
Label label = new Label("操作成功!");
dialog.add(label);
dialog.pack();
dialog.setVisible(true);

该代码中,首先创建了一个Dialog对象,它的父窗口是frame,标题为“消息对话框”,类型为模态对话框(最后的参数为true表示模态对话框)。接着创建了一个Label组件,将其添加到对话框中,然后调用pack()方法调整对话框的大小,最后使用setVisible()方法将对话框显示出来。

处理对话框事件

在Java AWT中,对话框也可以像其他组件一样处理事件。例如,可以添加一个事件监听器来处理用户单击“确定”按钮的事件。以下是创建输入对话框的示例代码:

Dialog dialog = new Dialog(frame, "输入对话框", true);
TextField textField = new TextField();
dialog.add(textField);
Button okButton = new Button("确定");
okButton.addActionListener(e -> {
    String text = textField.getText();
    System.out.println("用户输入的文本是:" + text);
    dialog.dispose();
});
Button cancelButton = new Button("取消");
cancelButton.addActionListener(e -> dialog.dispose());
Panel buttonPanel = new Panel();
buttonPanel.add(okButton);
buttonPanel.add(cancelButton);
dialog.add(buttonPanel, BorderLayout.SOUTH);
dialog.pack();
dialog.setVisible(true);

该代码中,与前面的代码不同的是,首先创建了一个TextField组件,用来输入用户的数据。然后创建了两个按钮:一个是“确定”按钮,另一个是“取消”按钮。使用addActionListener()方法为每个按钮添加一个事件监听器。对于“确定”按钮,事件处理器将文本框中的内容输出到控制台,并关闭对话框。对于“取消”按钮,事件处理器只是关闭对话框而已。最后将两个按钮添加到一个Panel组件中,并将其放置到对话框的南部。调用pack()方法调整对话框的大小,最后使用setVisible()方法将对话框显示出来。

总结

Java AWT提供了三种常用的对话框类型,分别是消息对话框、输入对话框和文件对话框。可以使用Dialog类来创建对话框,使用事件监听器来处理对话框中的事件。