Java利用swing简单的学生信息管理
时间: 2023-09-10 13:08:05 浏览: 127
好的,我可以给你提供一个简单的Java Swing程序示例来管理学生信息。以下是一个基本的示例,它可以显示学生信息并允许用户添加、编辑和删除学生信息。
首先,我们需要创建一个包含学生信息的类,例如:
```
public class Student {
private int id;
private String name;
private int age;
private String gender;
private String major;
// 构造函数
public Student(int id, String name, int age, String gender, String major) {
this.id = id;
this.name = name;
this.age = age;
this.gender = gender;
this.major = major;
}
// Getter和Setter方法
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getMajor() {
return major;
}
public void setMajor(String major) {
this.major = major;
}
}
```
接下来,我们需要创建一个用于显示学生信息的GUI界面。这个示例程序中,我们使用了JTable来显示学生信息。以下是GUI界面的代码:
```java
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
public class StudentManagementGUI extends JFrame {
private JPanel mainPanel;
private JTable studentTable;
private DefaultTableModel tableModel;
private JButton addButton;
private JButton editButton;
private JButton deleteButton;
private ArrayList<Student> studentList;
public StudentManagementGUI() {
setTitle("学生信息管理系统");
setSize(600, 400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
// 创建主面板
mainPanel = new JPanel(new BorderLayout());
getContentPane().add(mainPanel);
// 创建表格
tableModel = new DefaultTableModel(new String[]{"学号", "姓名", "年龄", "性别", "专业"}, 0);
studentTable = new JTable(tableModel);
JScrollPane scrollPane = new JScrollPane(studentTable);
mainPanel.add(scrollPane, BorderLayout.CENTER);
// 创建按钮
addButton = new JButton("添加");
editButton = new JButton("编辑");
deleteButton = new JButton("删除");
JPanel buttonPanel = new JPanel();
buttonPanel.add(addButton);
buttonPanel.add(editButton);
buttonPanel.add(deleteButton);
mainPanel.add(buttonPanel, BorderLayout.SOUTH);
// 初始化学生列表
studentList = new ArrayList<Student>();
studentList.add(new Student(1, "张三", 20, "男", "计算机科学与技术"));
studentList.add(new Student(2, "李四", 21, "女", "软件工程"));
studentList.add(new Student(3, "王五", 19, "男", "物联网工程"));
// 将学生列表添加到表格中
for (Student student : studentList) {
tableModel.addRow(new Object[]{student.getId(), student.getName(), student.getAge(), student.getGender(), student.getMajor()});
}
// 添加按钮事件监听器
addButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
// TODO: 添加学生信息
}
});
editButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
// TODO: 编辑学生信息
}
});
deleteButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
// TODO: 删除学生信息
}
});
}
public static void main(String[] args) {
StudentManagementGUI gui = new StudentManagementGUI();
gui.setVisible(true);
}
}
```
最后,我们需要实现添加、编辑和删除学生信息的功能。在这个示例程序中,我们只是简单地弹出一个对话框来输入学生信息,并将其添加到表格中。以下是添加学生信息的代码示例:
```java
addButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
// 弹出对话框,输入学生信息
int id = Integer.parseInt(JOptionPane.showInputDialog("请输入学号:"));
String name = JOptionPane.showInputDialog("请输入姓名:");
int age = Integer.parseInt(JOptionPane.showInputDialog("请输入年龄:"));
String gender = JOptionPane.showInputDialog("请输入性别:");
String major = JOptionPane.showInputDialog("请输入专业:");
// 添加学生信息到表格和列表中
tableModel.addRow(new Object[]{id, name, age, gender, major});
studentList.add(new Student(id, name, age, gender, major));
}
});
```
类似地,你可以使用JOptionPane来实现编辑和删除学生信息的功能。
以上就是一个简单的Java Swing程序示例,它可以用于学生信息管理。当然,这只是一个基础的示例,你可以根据自己的需求来扩展它。
阅读全文