else if (e.getSource() == deleteButton) { String car = JOptionPane.showInputDialog(this, "请输入车位号:"); for (int i = 0; i < p.size(); i++) { if (p.get(i).getBed().equals(car)) { p.remove(i); saveToFile(); JOptionPane.showMessageDialog(this, "删除成功!"); return; } }
时间: 2024-02-14 19:21:23 浏览: 110
这是一个Java程序中的事件处理代码,它属于CarManagementSystem类。在这里,通过实现ActionListener接口,并重写其中的actionPerformed方法,实现对四个JButton的事件处理。这里的代码是对删除按钮(deleteButton)的事件处理。当用户点击删除按钮时,会触发该事件处理。在事件处理中,首先通过showInputDialog方法显示一个输入对话框,提示用户输入要删除的车辆的车位号。用户输入车位号后,通过for循环遍历车辆信息列表,查找是否存在该车位号对应的车辆信息。如果存在,则通过remove方法将该车辆信息从车辆信息列表中删除,并调用saveToFile方法,将车辆信息列表保存到文件中。最后,显示一个提示框,告知用户删除成功。如果不存在该车位号对应的车辆信息,则不进行任何操作。通过这种方式,可以实现对车辆信息的删除操作。
相关问题
java随机数抽奖程序界面设计多用户输入
这里给出一个简单的 Java 随机数抽奖程序的界面设计,包含多个用户输入功能。
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.Random;
public class LuckyDraw extends JFrame implements ActionListener {
private JButton btnAddUser, btnDeleteUser, btnClearUsers, btnStartDraw;
private JTextArea txtUsers, txtResult;
private ArrayList<String> userList = new ArrayList<>();
public LuckyDraw() {
super("Lucky Draw");
// add user button
btnAddUser = new JButton("Add User");
btnAddUser.addActionListener(this);
// delete user button
btnDeleteUser = new JButton("Delete User");
btnDeleteUser.addActionListener(this);
// clear users button
btnClearUsers = new JButton("Clear Users");
btnClearUsers.addActionListener(this);
// start draw button
btnStartDraw = new JButton("Start Draw");
btnStartDraw.addActionListener(this);
// user list text area
txtUsers = new JTextArea(10, 20);
txtUsers.setEditable(false);
JScrollPane scrollPane1 = new JScrollPane(txtUsers);
// result text area
txtResult = new JTextArea(1, 20);
txtResult.setEditable(false);
JScrollPane scrollPane2 = new JScrollPane(txtResult);
// layout
JPanel btnPanel = new JPanel(new GridLayout(4, 1));
btnPanel.add(btnAddUser);
btnPanel.add(btnDeleteUser);
btnPanel.add(btnClearUsers);
btnPanel.add(btnStartDraw);
JPanel userPanel = new JPanel(new BorderLayout());
userPanel.add(new JLabel("Users:"), BorderLayout.NORTH);
userPanel.add(scrollPane1, BorderLayout.CENTER);
JPanel resultPanel = new JPanel(new BorderLayout());
resultPanel.add(new JLabel("Result:"), BorderLayout.NORTH);
resultPanel.add(scrollPane2, BorderLayout.CENTER);
JPanel mainPanel = new JPanel(new BorderLayout());
mainPanel.add(userPanel, BorderLayout.WEST);
mainPanel.add(resultPanel, BorderLayout.EAST);
mainPanel.add(btnPanel, BorderLayout.SOUTH);
add(mainPanel);
setSize(400, 400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
public static void main(String[] args) {
new LuckyDraw();
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == btnAddUser) {
String name = JOptionPane.showInputDialog("Enter user name:");
if (name != null && !name.isEmpty()) {
userList.add(name);
updateUsers();
}
} else if (e.getSource() == btnDeleteUser) {
if (userList.size() > 0) {
String name = JOptionPane.showInputDialog("Enter user name to delete:");
if (name != null && !name.isEmpty()) {
userList.remove(name);
updateUsers();
}
}
} else if (e.getSource() == btnClearUsers) {
userList.clear();
updateUsers();
} else if (e.getSource() == btnStartDraw) {
if (userList.size() > 0) {
Random rand = new Random();
int index = rand.nextInt(userList.size());
String winner = userList.get(index);
txtResult.setText(winner + " wins!");
} else {
txtResult.setText("No users!");
}
}
}
private void updateUsers() {
txtUsers.setText("");
for (String user : userList) {
txtUsers.append(user + "\n");
}
}
}
```
这个程序的主要界面包含一个 "Users" 的文本区域,其中会显示当前添加的用户,以及一个 "Result" 的文本区域,用于显示抽奖结果。程序还包含四个按钮,分别是 "Add User"、"Delete User"、"Clear Users" 和 "Start Draw",分别用于添加用户、删除用户、清空用户列表和开始抽奖。用户列表和抽奖结果都是通过 JTextArea 控件实现的,而按钮则通过 JButton 控件实现。程序还包含一个 userList 的 ArrayList,用于保存用户列表。在每次添加、删除和清空用户列表时,都需要更新文本区域的内容,这个操作是通过 updateUsers() 方法实现的。在开始抽奖时,程序会随机选择一个用户作为中奖者,并将其显示在 "Result" 文本区域中。
用java写写一个人员信息管理里面包含人员信息增加,修改,删除,查询人员信息功能,人员信息增加里面包含编号,姓名,性别,部门,职位,其他以上都需带一个文本框进行信息输入,拥有增加,清空和退出的功能按钮,并实现其功能。人员信息修改包含人员编号查询,修改,清空和退出功能按钮,人员编号查询需要弹出编号查询框输入数据进行查询功能。代码帮我整合在一起
好的,以下是一个简单的Java程序,实现了人员信息管理的增加、修改、删除和查询功能。程序使用了Java Swing库来实现图形用户界面。
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class PersonInfoManagement extends JFrame implements ActionListener {
private JLabel titleLabel, idLabel, nameLabel, genderLabel, departmentLabel, positionLabel, otherLabel;
private JTextField idField, nameField, genderField, departmentField, positionField, otherField;
private JButton addButton, clearButton, modifyButton, deleteButton, queryButton, exitButton;
public PersonInfoManagement() {
super("人员信息管理系统");
setSize(400, 300);
setLocationRelativeTo(null);
// 标题
titleLabel = new JLabel("人员信息管理系统", JLabel.CENTER);
titleLabel.setFont(new Font("宋体", Font.BOLD, 20));
add(titleLabel, BorderLayout.NORTH);
// 表单
JPanel formPanel = new JPanel(new GridLayout(6, 2));
idLabel = new JLabel("编号:", JLabel.RIGHT);
idField = new JTextField(10);
nameLabel = new JLabel("姓名:", JLabel.RIGHT);
nameField = new JTextField(10);
genderLabel = new JLabel("性别:", JLabel.RIGHT);
genderField = new JTextField(10);
departmentLabel = new JLabel("部门:", JLabel.RIGHT);
departmentField = new JTextField(10);
positionLabel = new JLabel("职位:", JLabel.RIGHT);
positionField = new JTextField(10);
otherLabel = new JLabel("其他:", JLabel.RIGHT);
otherField = new JTextField(10);
formPanel.add(idLabel);
formPanel.add(idField);
formPanel.add(nameLabel);
formPanel.add(nameField);
formPanel.add(genderLabel);
formPanel.add(genderField);
formPanel.add(departmentLabel);
formPanel.add(departmentField);
formPanel.add(positionLabel);
formPanel.add(positionField);
formPanel.add(otherLabel);
formPanel.add(otherField);
add(formPanel, BorderLayout.CENTER);
// 操作按钮
JPanel buttonPanel = new JPanel(new FlowLayout());
addButton = new JButton("增加");
addButton.addActionListener(this);
clearButton = new JButton("清空");
clearButton.addActionListener(this);
modifyButton = new JButton("修改");
modifyButton.addActionListener(this);
deleteButton = new JButton("删除");
deleteButton.addActionListener(this);
queryButton = new JButton("查询");
queryButton.addActionListener(this);
exitButton = new JButton("退出");
exitButton.addActionListener(this);
buttonPanel.add(addButton);
buttonPanel.add(clearButton);
buttonPanel.add(modifyButton);
buttonPanel.add(deleteButton);
buttonPanel.add(queryButton);
buttonPanel.add(exitButton);
add(buttonPanel, BorderLayout.SOUTH);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == addButton) {
// 增加人员信息
String id = idField.getText();
String name = nameField.getText();
String gender = genderField.getText();
String department = departmentField.getText();
String position = positionField.getText();
String other = otherField.getText();
// TODO: 将人员信息保存到数据库中
JOptionPane.showMessageDialog(this, "人员信息已增加!");
} else if (e.getSource() == clearButton) {
// 清空表单
idField.setText("");
nameField.setText("");
genderField.setText("");
departmentField.setText("");
positionField.setText("");
otherField.setText("");
} else if (e.getSource() == modifyButton) {
// 修改人员信息
String id = JOptionPane.showInputDialog(this, "请输入要修改的人员编号:");
// TODO: 根据人员编号查询人员信息,显示到表单中
// TODO: 用户修改人员信息,保存到数据库中
JOptionPane.showMessageDialog(this, "人员信息已修改!");
} else if (e.getSource() == deleteButton) {
// 删除人员信息
String id = JOptionPane.showInputDialog(this, "请输入要删除的人员编号:");
// TODO: 根据人员编号删除人员信息
JOptionPane.showMessageDialog(this, "人员信息已删除!");
} else if (e.getSource() == queryButton) {
// 查询人员信息
String id = JOptionPane.showInputDialog(this, "请输入要查询的人员编号:");
// TODO: 根据人员编号查询人员信息,显示到表单中
} else if (e.getSource() == exitButton) {
// 退出程序
System.exit(0);
}
}
public static void main(String[] args) {
PersonInfoManagement pim = new PersonInfoManagement();
pim.setVisible(true);
}
}
```
该程序实现了一个简单的人员信息管理系统,包括增加、修改、删除和查询功能。在增加和修改功能中,需要将人员信息保存到数据库中,您可以使用JDBC来实现与数据库的交互。
阅读全文