package com.exam.frame;
import java.awt.FlowLayout;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.Box;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
import com.exam.dao.BaseDataDAO;
import com.exam.dao.StudentDAO;
import com.exam.pojo.ComboItem;
import com.exam.util.BaseDataUtil;
import com.exam.util.SystemConstants;
/**
* 添加和修改数据的表单页
*
* @author 专治八阿哥的孟老师
*/
public class StudentEditPanel extends JInternalFrame {
public StudentEditPanel(String selectedId) {
super("编辑学生", true, true, true, true);
this.setSize(SystemConstants.FRAME_WIDTH - 20, SystemConstants.FRAME_HEIGHT - 50);
// 创建内容面板
JPanel panel = new JPanel();
panel.setLayout(new FlowLayout());
// 设置内部窗口的内容面板
this.setContentPane(panel);
// "学号", "专业班级", "年级", "学院", "专业", "姓名", "性别", "备注"
Box boxBase = Box.createHorizontalBox();
Box boxLeft = Box.createVerticalBox();
// 左边的部分,把要编辑的字段依次添加进来,有几个就写几个
boxLeft.add(new JLabel("学号"));
boxLeft.add(Box.createVerticalStrut(8));
boxLeft.add(new JLabel("学院"));
boxLeft.add(Box.createVerticalStrut(10));
boxLeft.add(new JLabel("专业"));
boxLeft.add(Box.createVerticalStrut(10));
boxLeft.add(new JLabel("班级"));
boxLeft.add(Box.createVerticalStrut(10));
boxLeft.add(new JLabel("姓名"));
boxLeft.add(Box.createVerticalStrut(8));
boxLeft.add(new JLabel("性别"));
boxLeft.add(Box.createVerticalStrut(8));
boxLeft.add(new JLabel("备注"));
boxLeft.add(Box.createVerticalStrut(30));
// 右边的部分,是文本框,和上面boxLeft的内容顺序对应
// 如果不允许修改,就把JTextField换成JLabel
Box boxRight = Box.createVerticalBox();
boxRight.add(Box.createVerticalStrut(5));
JLabel snoLabel = new JLabel(selectedId == null ? "--" : selectedId);
boxRight.add(snoLabel);
boxRight.add(Box.createVerticalStrut(5));
JComboBox<ComboItem> deptBox = new JComboBox<>();
BaseDataUtil.fillComboxItem(deptBox, BaseDataDAO.getDeptList());
boxRight.add(deptBox);
boxRight.add(Box.createVerticalStrut(2));
JComboBox<ComboItem> majorBox = new JComboBox<>();
BaseDataUtil.fillComboxItem(majorBox, BaseDataDAO.getMajorList(""));
boxRight.add(majorBox);
boxRight.add(Box.createVerticalStrut(2));
JComboBox<ComboItem> classBox = new JComboBox<>();
BaseDataUtil.fillComboxItem(classBox, BaseDataDAO.getClassList(""));
boxRight.add(classBox);
boxRight.add(Box.createVerticalStrut(5));
JTextField field1 = new JTextField(10);
boxRight.add(field1);
boxRight.add(Box.createVerticalStrut(5));
// -------权限按钮开始--------
JRadioButton radio1 = new JRadioButton("男", true);// 只传了两个参数
JRadioButton radio2 = new JRadioButton("女");
ButtonGroup group = new ButtonGroup();// 创建一个按钮组
group.add(radio1);
group.add(radio2);
Box radioBox = Box.createHorizontalBox();
radioBox.add(radio1);
radioBox.add(radio2);
boxRight.add(radioBox);
boxRight.add(Box.createVerticalStrut(5));
JTextField field3 = new JTextField(10);
boxRight.add(field3);
boxRight.add(Box.createVerticalStrut(5));
deptBox.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
ComboItem deptItem = (ComboItem) deptBox.getSelectedItem();
if (deptItem != null) {
BaseDataUtil.fillComboxItem(majorBox, BaseDataDAO.getMajorList(deptItem.getId()));
}
}
});
majorBox.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
ComboItem majorItem = (ComboItem) majorBox.getSelectedItem();
if (majorItem != null) {
BaseDataUtil.fillComboxItem(classBox, BaseDataDAO.getClassList(majorItem.getId()));
}
}
});
classBox.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent e) {
ComboItem classItem = (ComboItem) classBox.getSelectedItem();
if (classItem != null && classItem.getId().length() > 0) {
int num = StudentDAO.search(1, classItem.getId()).length + 1;
String sno = classItem.getId();
if (num < 10) {
sno += "0";
}
snoLabel.setText(sno + num);
} else {
snoLabel.setText("--");
}
}
});
// 获取选中的id,当前页面是从列表页过来的,如果id是空的或者是-1代表点的添加按钮,否则是修改按钮
// 如果是修改功能,需要把原数据的内容回填到表单中
if (selectedId != null) {
// 0"学号", 1"专业班级", 2"年级", 3"学院", 4"专业", 5"姓名", 6"性别", 7"备注"
snoLabel.setText(selectedId);
deptBox.setEnabled(false);
majorBox.setEnabled(false);
classBox.setEnabled(false);
field1.setEnabled(false);
radio1.setEnabled(false);
radio2.setEnabled(false);
Object[] data = StudentDAO.findById(selectedId);
if ("男".equals(data[6])) {
radio1.setSelected(true);
} else {
radio2.setSelected(true);
}
deptBox.removeAllItems();
deptBox.addItem(
new ComboItem(data[3].toString(), BaseDataDAO.findDeptById(data[3].toString())[1].toString()));
majorBox.removeAllItems();
majorBox.addItem(
new ComboItem(data[4].toString(), BaseDataDAO.findMajorById(data[4].toString())[1].toString()));
classBox.removeAllItems();
classBox.addItem(
new ComboItem(data[1].toString(), BaseDataDAO.findClassById(data[1].toString())[1].toString()));
field1.setText(data[5].toString());// 姓名
field3.setText(data[7].toString());// 备注
}
JButton btn = new JButton("提交");
btn.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
ComboItem classItem = (ComboItem) classBox.getSelectedItem();
if (classItem == null || classItem.getId().length() == 0) {
JOptionPane.showMessageDialog(btn.getParent(), "请选择班级", "系统提示", JOptionPane.WARNING_MESSAGE);
return;
}
if (field1.getText() == null || field1.getText().trim().length() == 0) {
JOptionPane.showMessageDialog(btn.getParent(), "请选输入姓名", "系统提示", JOptionPane.WARNING_MESSAGE);
return;
}
// 班级id,班级名,年级,院,系
Object[] classData = BaseDataDAO.findClassById(classItem.getId());
// 0"学号", 1"专业班级", 2"年级", 3"学院", 4"专业", 5"姓名", 6"性别", 7"备注"
Object[] data = new Object[] { snoLabel.getText(), classData[0], classData[2], classData[3],
classData[4], field1.getText(), radio1.isSelected() ? "男" : "女", field3.getText() };
if (selectedId != null) {
StudentDAO.update(selectedId, data);
} else {
int opt = JOptionPane.showConfirmDialog(btn.getParent(), "学生基本信息提交后不能修改,确认提交吗?");
if (opt != 0) {
return;
}
StudentDAO.add(data);
}
// 回到列表页
AdminPanel.setContent(new StudentTablePanel());
}
});
boxRight.add(btn);
boxBase.add(boxLeft);
boxBase.add(Box.createHorizontalStrut(8));
boxBase.add(boxRight);
panel.add(boxBase);
// 显示内部窗口
this.setVisible(true);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
项目介绍 https://blog.csdn.net/u011731544/article/details/132149720 系统有管理员和教师两个角色,管理员登录之后可以进行课程管理、学生管理、排课;教师登录后可以进行评分; 学生管理包括查询、添加和修改。查询条件中的学院、系、班级是级联查询;添加学生时根据专业班级自动生成学号;学生信息添加成功后,只能修改备注; 课程列表可通过课程名模糊查询;课程分类包括专业选修、专业必修、公共选修、公共必修; 排课时选择班级、课程;一门课程可以有多个老师授课,但只能有一个老师评分; 教师登录后可以查看自己的课程; 只有评分老师能进行评分; 当前是不含数据库的版本,使用Java集合存储数据、 数据库版见:https://download.csdn.net/download/u011731544/88304493
资源推荐
资源详情
资源评论
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![exe](https://img-home.csdnimg.cn/images/20210720083343.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
收起资源包目录
![package](https://csdnimg.cn/release/downloadcmsfe/public/img/package.f3fc750b.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![folder](https://csdnimg.cn/release/downloadcmsfe/public/img/folder.005fa2e5.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/PNG.png)
共 81 条
- 1
资源评论
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/f063a9de83e446449b06890511ed684c_u011731544.jpg!1)
专治八阿哥的孟老师
- 粉丝: 2674
- 资源: 116
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
- AI绘画工具介绍(文档)
- pandas-2.2.2-cp311-cp311-musllinux-1-1-aarch64.whl
- 小程序开发基础与简单示例.pdf
- matlab:读取图像+显示图像+显示图像的直方图+直方图均衡
- pandas-2.2.2-cp311-cp311-manylinux-2-17-x86-64.manylinux2014.whl
- 如何充分运用ansys的HELP
- pandas-2.2.2-cp311-cp311-musllinux-1-1-x86-64.whl
- C语言可变长数组(VLA)详解与应用
- android-studio-2024.1.1.12-windows-zip.zip.001
- 辰光PHP客服系统多商户全开源V3.1版+安装教程
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)