📜  使用Java Swing 的学生记录系统(1)

📅  最后修改于: 2023-12-03 15:06:52.442000             🧑  作者: Mango

使用Java Swing的学生记录系统

这是一个基于Java Swing GUI框架开发的学生记录系统,帮助学校或教育机构管理学生信息,包括学生姓名、年龄、性别、学号、成绩等。

功能介绍

1. 添加学生信息

通过该功能,管理员可以输入学生的姓名、年龄、性别、学号和成绩等信息,将学生信息添加到系统中。

2. 查看学生信息

该功能允许管理员查看系统中的所有学生信息,包括姓名、年龄、性别、学号和成绩等。

3. 查询学生信息

管理员可以通过输入学生姓名或学号等信息来查询学生记录系统中的学生信息。

4. 修改学生信息

管理员可以通过该功能修改学生的姓名、年龄、性别、学号以及成绩信息。

5. 删除学生信息

管理员可以通过该功能删除学生记录系统中的学生信息。

代码实现

该学生记录系统使用Java Swing GUI框架实现,下面是一些代码片段的介绍。

1. 添加学生信息

JButton btnAdd = new JButton("添加");  
btnAdd.addActionListener(new ActionListener() {  
    public void actionPerformed(ActionEvent e) {  
        // 获取用户输入信息  
        String name = txtName.getText().trim();  
        int age = Integer.parseInt(txtAge.getText().trim());  
        String gender = rdoMale.isSelected() ? "男" : "女";  
        String no = txtNo.getText().trim();  
        double score = Double.parseDouble(txtScore.getText().trim());  
        // 将学生信息添加到列表中  
        Object[] rowData = {name, age, gender, no, score};  
        DefaultTableModel model = (DefaultTableModel) tblStudents.getModel();  
        model.addRow(rowData);  
    }  
}); 

2. 查看学生信息

JTable tblStudents = new JTable(); 
DefaultTableModel model = new DefaultTableModel(data, columnNames);  
tblStudents.setModel(model);  
JScrollPane scrollPane = new JScrollPane(tblStudents);

3. 查询学生信息

JTextField txtNoQuery = new JTextField();  
JButton btnQuery = new JButton("查询");  
btnQuery.addActionListener(new ActionListener() {  
    public void actionPerformed(ActionEvent e) {  
        // 获取查询关键字  
        String keyword = txtNoQuery.getText().trim();  
        // 遍历学生信息列表  
        DefaultTableModel model = (DefaultTableModel) tblStudents.getModel();  
        for (int i = 0; i < model.getRowCount(); i++) {  
            String no = model.getValueAt(i, 3).toString();  
            if (no.equals(keyword)) {  
                // 高亮显示查询到的学生信息行  
                tblStudents.setRowSelectionInterval(i, i);  
                return;  
            }  
        }  
        JOptionPane.showMessageDialog(null, "未查询到学生信息");  
    }  
}); 

4. 修改学生信息

JButton btnEdit = new JButton("修改");  
btnEdit.addActionListener(new ActionListener() {  
    public void actionPerformed(ActionEvent e) {  
        // 获取被选中的行  
        int selectedRow = tblStudents.getSelectedRow();  
        if (selectedRow == -1) {  
            JOptionPane.showMessageDialog(null, "请先选择一行记录");  
            return;  
        }  
        // 获取用户输入信息  
        String name = txtName.getText().trim();  
        int age = Integer.parseInt(txtAge.getText().trim());  
        String gender = rdoMale.isSelected() ? "男" : "女";  
        String no = txtNo.getText().trim();  
        double score = Double.parseDouble(txtScore.getText().trim());  
        // 修改学生信息  
        DefaultTableModel model = (DefaultTableModel) tblStudents.getModel();  
        model.setValueAt(name, selectedRow, 0);  
        model.setValueAt(age, selectedRow, 1);  
        model.setValueAt(gender, selectedRow, 2);  
        model.setValueAt(no, selectedRow, 3);  
        model.setValueAt(score, selectedRow, 4);  
        JOptionPane.showMessageDialog(null, "修改成功");  
    }  
});  

5. 删除学生信息

JButton btnDelete = new JButton("删除");  
btnDelete.addActionListener(new ActionListener() {  
    public void actionPerformed(ActionEvent e) {  
        // 获取被选中的行  
        int selectedRow = tblStudents.getSelectedRow();  
        if (selectedRow == -1) {  
            JOptionPane.showMessageDialog(null, "请先选择一行记录");  
            return;  
        }  
        // 删除学生信息  
        DefaultTableModel model = (DefaultTableModel) tblStudents.getModel();  
        model.removeRow(selectedRow);  
        JOptionPane.showMessageDialog(null, "删除成功");  
    }  
});  
结语

该学生记录系统使用Java Swing GUI框架实现,提供了添加、查看、查询、修改和删除学生信息等功能,有助于提高学校或教育机构的管理效率。如需详细代码,请参考源码。