使用JAVA做出简单的图形设计的学生信息管理系统的代码程序
时间: 2024-02-03 15:12:53 浏览: 30
以下是一个简单的基于JAVA Swing的学生信息管理系统的代码程序,仅供参考:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.ArrayList;
public class StudentManagementSystem extends JFrame implements ActionListener {
private JLabel nameLabel, idLabel, genderLabel, majorLabel;
private JTextField nameField, idField, majorField;
private JComboBox genderBox;
private JButton addButton, deleteButton, updateButton, searchButton, clearButton;
private JTable table;
private JScrollPane scrollPane;
private String[] genders = {"Male", "Female"};
private String[] columnNames = {"Name", "ID", "Gender", "Major"};
private Object[][] rowData = {};
private ArrayList<Student> students = new ArrayList<>();
public StudentManagementSystem() {
setTitle("Student Management System");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new FlowLayout());
nameLabel = new JLabel("Name:");
add(nameLabel);
nameField = new JTextField(10);
add(nameField);
idLabel = new JLabel("ID:");
add(idLabel);
idField = new JTextField(10);
add(idField);
genderLabel = new JLabel("Gender:");
add(genderLabel);
genderBox = new JComboBox(genders);
add(genderBox);
majorLabel = new JLabel("Major:");
add(majorLabel);
majorField = new JTextField(10);
add(majorField);
addButton = new JButton("Add");
addButton.addActionListener(this);
add(addButton);
deleteButton = new JButton("Delete");
deleteButton.addActionListener(this);
add(deleteButton);
updateButton = new JButton("Update");
updateButton.addActionListener(this);
add(updateButton);
searchButton = new JButton("Search");
searchButton.addActionListener(this);
add(searchButton);
clearButton = new JButton("Clear");
clearButton.addActionListener(this);
add(clearButton);
table = new JTable(rowData, columnNames);
scrollPane = new JScrollPane(table);
add(scrollPane);
pack();
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == addButton) {
String name = nameField.getText();
String id = idField.getText();
String gender = (String) genderBox.getSelectedItem();
String major = majorField.getText();
Student student = new Student(name, id, gender, major);
students.add(student);
updateTable();
clearFields();
} else if (e.getSource() == deleteButton) {
int selectedRow = table.getSelectedRow();
if (selectedRow != -1) {
students.remove(selectedRow);
updateTable();
}
} else if (e.getSource() == updateButton) {
int selectedRow = table.getSelectedRow();
if (selectedRow != -1) {
String name = nameField.getText();
String id = idField.getText();
String gender = (String) genderBox.getSelectedItem();
String major = majorField.getText();
Student student = new Student(name, id, gender, major);
students.set(selectedRow, student);
updateTable();
}
} else if (e.getSource() == searchButton) {
String id = JOptionPane.showInputDialog(this, "Enter ID:");
if (id != null && !id.isEmpty()) {
for (int i = 0; i < students.size(); i++) {
if (students.get(i).getId().equals(id)) {
table.setRowSelectionInterval(i, i);
break;
}
}
}
} else if (e.getSource() == clearButton) {
clearFields();
}
}
private void updateTable() {
Object[][] data = new Object[students.size()][4];
for (int i = 0; i < students.size(); i++) {
data[i][0] = students.get(i).getName();
data[i][1] = students.get(i).getId();
data[i][2] = students.get(i).getGender();
data[i][3] = students.get(i).getMajor();
}
table.setModel(new DefaultTableModel(data, columnNames));
}
private void clearFields() {
nameField.setText("");
idField.setText("");
genderBox.setSelectedIndex(0);
majorField.setText("");
}
public static void main(String[] args) {
new StudentManagementSystem();
}
}
class Student {
private String name;
private String id;
private String gender;
private String major;
public Student(String name, String id, String gender, String major) {
this.name = name;
this.id = id;
this.gender = gender;
this.major = major;
}
public String getName() {
return name;
}
public String getId() {
return id;
}
public String getGender() {
return gender;
}
public String getMajor() {
return major;
}
}
```
这个学生信息管理系统具有基本的添加、删除、更新、搜索和清除功能。当用户点击“Add”按钮时,程序将会使用四个文本框中的信息创建一个新的Student对象,并将其添加到ArrayList中。当用户选择一个表格行并点击“Delete”或“Update”按钮时,程序将会从ArrayList中删除或更新相应的Student对象。当用户点击“Search”按钮时,程序将会弹出一个对话框,要求用户输入ID以搜索相应的学生信息。当用户点击“Clear”按钮时,程序将会清除所有文本框中的内容。
请注意,这个程序只是一个简单的示例,它并没有对输入进行验证或错误处理,并且可以进一步改进和扩展。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)