📅  最后修改于: 2023-12-03 15:22:09.550000             🧑  作者: Mango
本文介绍一种使用 AWT (Abstract Window Toolkit)将学生信息存储在文件中的 Java 程序。程序运行时会弹出一个窗口,你可以在窗口中输入学生信息并保存到文件中。
程序中需要使用到 java.awt.*
和 java.io.*
两个包,因此需要在文件开头导入这两个包。
import java.awt.*;
import java.io.*;
使用 Frame
类创建一个窗口。
Frame f = new Frame("Student Information");
窗口中需要包含多个文本框和按钮,我们可以使用 TextField
类和 Button
类来实现。
Label nameLabel = new Label("Name:");
TextField name = new TextField(20);
Label idLabel = new Label("ID:");
TextField id = new TextField(20);
Button saveButton = new Button("Save");
Button clearButton = new Button("Clear");
通过 FlowLayout
类设置布局,使窗口中的组件可以居中对齐。
f.setLayout(new FlowLayout());
将之前创建的文本框和按钮添加到窗口中。
f.add(nameLabel);
f.add(name);
f.add(idLabel);
f.add(id);
f.add(saveButton);
f.add(clearButton);
单击保存按钮时,程序会将学生姓名和学号保存到文件中。
class SaveListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
try {
File file = new File("students.txt");
FileWriter fw = new FileWriter(file, true);
BufferedWriter bw = new BufferedWriter(fw);
PrintWriter pw = new PrintWriter(bw);
pw.println(name.getText() + "," + id.getText());
pw.close();
bw.close();
fw.close();
name.setText("");
id.setText("");
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
单击清除按钮时,程序会清空文本框中的内容。
class ClearListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
name.setText("");
id.setText("");
}
}
将之前创建的监听器添加到按钮中。
saveButton.addActionListener(new SaveListener());
clearButton.addActionListener(new ClearListener());
最后,将窗口设为可见状态。
f.pack();
f.setVisible(true);
import java.awt.*;
import java.io.*;
public class StudentInfo {
public static void main(String[] args) {
Frame f = new Frame("Student Information");
Label nameLabel = new Label("Name:");
TextField name = new TextField(20);
Label idLabel = new Label("ID:");
TextField id = new TextField(20);
Button saveButton = new Button("Save");
Button clearButton = new Button("Clear");
f.add(nameLabel);
f.add(name);
f.add(idLabel);
f.add(id);
f.add(saveButton);
f.add(clearButton);
f.setLayout(new FlowLayout());
class SaveListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
try {
File file = new File("students.txt");
FileWriter fw = new FileWriter(file, true);
BufferedWriter bw = new BufferedWriter(fw);
PrintWriter pw = new PrintWriter(bw);
pw.println(name.getText() + "," + id.getText());
pw.close();
bw.close();
fw.close();
name.setText("");
id.setText("");
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
class ClearListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
name.setText("");
id.setText("");
}
}
saveButton.addActionListener(new SaveListener());
clearButton.addActionListener(new ClearListener());
f.pack();
f.setVisible(true);
}
}
本文介绍了一种使用 AWT 将学生信息存储在文件中的 Java 程序,其中涉及到创建窗口、添加组件、设置布局、创建监听器等内容。此程序只是简单地将学生信息保存到文本文件中,实际应用中可能需要保存到数据库中或者添加更多功能。