java设计一个简单的学生信息管理系统并实现图形化界面
时间: 2023-08-26 15:03:35 浏览: 51
为了实现学生信息管理系统的图形化界面,我们可以使用Java的Swing库。
首先,我们需要设计一个学生类,包含学生的基本信息,如姓名、学号、性别、年龄、出生日期等。然后,我们可以使用Java的集合类来存储学生信息,如ArrayList或HashMap,以便于增删改查。
接下来,我们需要设计一个图形化界面,包含添加学生、删除学生、修改学生和查询学生等功能。可以使用Java的JFrame、JPanel、JLabel、JTextField、JButton等组件来实现。
以下是一个简单的示例代码,实现了添加学生和查询学生的功能:
```java
import java.awt.*;
import java.awt.event.*;
import java.util.ArrayList;
import javax.swing.*;
public class StudentManagementSystem extends JFrame implements ActionListener {
private JLabel nameLabel, idLabel, genderLabel, ageLabel, birthdayLabel;
private JTextField nameField, idField, genderField, ageField, birthdayField;
private JButton addButton, queryButton;
private ArrayList<Student> students;
public StudentManagementSystem() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setTitle("学生信息管理系统");
setSize(400, 300);
setLocationRelativeTo(null);
setLayout(new GridLayout(6, 2));
nameLabel = new JLabel("姓名:");
add(nameLabel);
nameField = new JTextField();
add(nameField);
idLabel = new JLabel("学号:");
add(idLabel);
idField = new JTextField();
add(idField);
genderLabel = new JLabel("性别:");
add(genderLabel);
genderField = new JTextField();
add(genderField);
ageLabel = new JLabel("年龄:");
add(ageLabel);
ageField = new JTextField();
add(ageField);
birthdayLabel = new JLabel("出生日期:");
add(birthdayLabel);
birthdayField = new JTextField();
add(birthdayField);
addButton = new JButton("添加");
addButton.addActionListener(this);
add(addButton);
queryButton = new JButton("查询");
queryButton.addActionListener(this);
add(queryButton);
students = new ArrayList<Student>();
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == addButton) {
String name = nameField.getText();
String id = idField.getText();
String gender = genderField.getText();
int age = Integer.parseInt(ageField.getText());
String birthday = birthdayField.getText();
Student student = new Student(name, id, gender, age, birthday);
students.add(student);
JOptionPane.showMessageDialog(this, "添加成功!");
} else if (e.getSource() == queryButton) {
String id = JOptionPane.showInputDialog(this, "请输入学号:");
for (Student student : students) {
if (student.getId().equals(id)) {
JOptionPane.showMessageDialog(this,
"姓名:" + student.getName() + "\n" +
"学号:" + student.getId() + "\n" +
"性别:" + student.getGender() + "\n" +
"年龄:" + student.getAge() + "\n" +
"出生日期:" + student.getBirthday());
return;
}
}
JOptionPane.showMessageDialog(this, "未找到该学生!");
}
}
public static void main(String[] args) {
StudentManagementSystem sms = new StudentManagementSystem();
sms.setVisible(true);
}
}
class Student {
private String name;
private String id;
private String gender;
private int age;
private String birthday;
public Student(String name, String id, String gender, int age, String birthday) {
this.name = name;
this.id = id;
this.gender = gender;
this.age = age;
this.birthday = birthday;
}
public String getName() {
return name;
}
public String getId() {
return id;
}
public String getGender() {
return gender;
}
public int getAge() {
return age;
}
public String getBirthday() {
return birthday;
}
}
```