使用Java语言做一个分普通用户和管理员的增删查改图形化界面代码
时间: 2024-03-08 18:51:28 浏览: 17
好的,以下是一个简单的Java Swing实现的分普通用户和管理员的增删查改图形化界面的代码示例:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class UserManagementGUI extends JFrame implements ActionListener {
private JLabel titleLabel, idLabel, nameLabel, typeLabel;
private JTextField idField, nameField;
private JComboBox<String> typeBox;
private JButton addButton, deleteButton, updateButton, queryButton;
private JTable dataTable;
private JScrollPane tableScrollPane;
private JPanel contentPanel;
public UserManagementGUI() {
super("User Management");
setSize(600, 400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
titleLabel = new JLabel("User Management", JLabel.CENTER);
titleLabel.setFont(new Font("Arial", Font.PLAIN, 24));
idLabel = new JLabel("ID:");
nameLabel = new JLabel("Name:");
typeLabel = new JLabel("Type:");
idField = new JTextField();
nameField = new JTextField();
typeBox = new JComboBox<String>(new String[]{"Admin", "User"});
addButton = new JButton("Add");
addButton.addActionListener(this);
deleteButton = new JButton("Delete");
deleteButton.addActionListener(this);
updateButton = new JButton("Update");
updateButton.addActionListener(this);
queryButton = new JButton("Query");
queryButton.addActionListener(this);
dataTable = new JTable(new Object[][]{}, new Object[]{"ID", "Name", "Type"});
tableScrollPane = new JScrollPane(dataTable);
contentPanel = new JPanel(new BorderLayout());
contentPanel.add(titleLabel, BorderLayout.NORTH);
JPanel formPanel = new JPanel(new GridLayout(3, 2));
formPanel.add(idLabel);
formPanel.add(idField);
formPanel.add(nameLabel);
formPanel.add(nameField);
formPanel.add(typeLabel);
formPanel.add(typeBox);
contentPanel.add(formPanel, BorderLayout.WEST);
JPanel buttonPanel = new JPanel(new GridLayout(4, 1));
buttonPanel.add(addButton);
buttonPanel.add(deleteButton);
buttonPanel.add(updateButton);
buttonPanel.add(queryButton);
contentPanel.add(buttonPanel, BorderLayout.EAST);
contentPanel.add(tableScrollPane, BorderLayout.CENTER);
add(contentPanel);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == addButton) {
String id = idField.getText();
String name = nameField.getText();
String type = (String) typeBox.getSelectedItem();
// TODO: add new user
} else if (e.getSource() == deleteButton) {
int selectedRow = dataTable.getSelectedRow();
if (selectedRow != -1) {
String id = (String) dataTable.getValueAt(selectedRow, 0);
// TODO: delete user with id
}
} else if (e.getSource() == updateButton) {
int selectedRow = dataTable.getSelectedRow();
if (selectedRow != -1) {
String id = (String) dataTable.getValueAt(selectedRow, 0);
String name = nameField.getText();
String type = (String) typeBox.getSelectedItem();
// TODO: update user with id
}
} else if (e.getSource() == queryButton) {
// TODO: query all users and update the table
}
}
public static void main(String[] args) {
new UserManagementGUI();
}
}
```
注意:这个示例只是一个简单的模板,实际情况下需要根据具体需求进行修改和完善。另外,为了保证安全性,应该对用户输入进行合法性检查,并且在数据库操作时应该使用参数化查询防止SQL注入攻击。