学生成绩管理系统(三)
这个程序,越改,越觉得有问题,就将就着改改吧。
3.4 添加学生模块
先看一下界面,主界面没有修改完,修改完之后在贴代码:
图1 添加学生界面
package org.ygy.view;import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.List;import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;import org.ygy.exception.ServiceException;
import org.ygy.model.Student;
import org.ygy.model.StudentClass;
import org.ygy.service.IStuClassService;
import org.ygy.service.IStudentService;
import org.ygy.service.impl.StuClassService;
import org.ygy.service.impl.StudentService;/*** 添加学生* * @author Administrator**/
public class AddStudentPanel extends JPanel {private static final long serialVersionUID = 1L;private JLabel nameLabel = null ;private JLabel genderLabel = null ;private JLabel stuClassLabel = null;private JTextField nameText = null;private ButtonGroup genderGroup = null;private JRadioButton male = null;private JRadioButton female = null;private JButton button_save = null;private JButton button_reset = null;private JComboBox stuClassComboBox = null;private List<StudentClass> classList = null;public AddStudentPanel() {setLayout(new GridLayout(5, 2 , 5 , 5));nameLabel = new JLabel("姓名:" , JLabel.CENTER);genderLabel = new JLabel("性别:" , JLabel.CENTER);stuClassLabel = new JLabel("班级:" , JLabel.CENTER);nameText = new JTextField(20);add(nameLabel);add(nameText);add(genderLabel);initialGender();add(stuClassLabel);initialComboBox();initialButton();}/*** 初始化按钮*/private void initialButton() {button_save = new JButton("保存");button_save.setBounds(60 , 0 , 130, 32);button_reset = new JButton("重置");button_reset.setBounds(30 , 0 , 130, 32);button_save.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {//验证输入信息String name = nameText.getText().trim();boolean gender = male.isSelected() ? true : false;//得到的是班级名称,应得到对应的班级IDint stuClassId = findClassId(stuClassComboBox.getSelectedItem().toString().trim());if((!"".equals(name)) && (name != null)) {Student student = new Student();//得到输入的学生信息student.setName(name);student.setGender(gender);student.setStudentClass(new StudentClass(stuClassId));IStudentService studentService = new StudentService();try {studentService.addStudent(student);display("添加成功!" , "提示");} catch (ServiceException e1) {display(e1.getMessage() , "错误提示");}clearInput();} else {display("姓名不能为空!" , "错误提示");}}});button_reset.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent arg0) {clearInput();}});add(new JPanel().add(button_save));add(new JPanel().add(button_reset));}private int findClassId(String name) {int id = 0;for(StudentClass each : classList) {if(each.getName().equals(name)) {id = each.getId();break;}}return id;}/*** 清空输入信息*/private void clearInput() {nameText.setText("");}private void display(String message , String title) {JOptionPane.showMessageDialog(this , message , title , JOptionPane.INFORMATION_MESSAGE);}/*** 初始化班级下拉框*/private void initialComboBox() {IStuClassService stuClassService = new StuClassService();try {classList = stuClassService.getClassList();} catch (ServiceException e1) {display(e1.getMessage() , "错误提示");}String[] stuClass = new String[classList.size()];for(int c=0; c<stuClass.length; c++) {stuClass[c] = classList.get(c).getName();}stuClassComboBox = new JComboBox(stuClass);add(stuClassComboBox);}/*** 初始化性别单选按钮*/private void initialGender() {genderGroup = new ButtonGroup();male = new JRadioButton("男");male.setSelected(true);female = new JRadioButton("女");genderGroup.add(male);genderGroup.add(female);JPanel genderPanel = new JPanel();genderPanel.add(male);genderPanel.add(female);add(genderPanel);}
}
嗯,我想了想,还是不在这里接着写了,把修改完之后的代码上传,希望对初学的同学有帮助。
学生成绩管理系统(三)相关推荐
- 可执行源码:基于javaweb实现学生成绩管理系统,三种角色学生和教师 管理员,实现了学生信息管理,课程管理,教师信息管理,学生成绩汇总,学生登录注册,教师和管理员的登录,个人信息修改等
基于javaweb实现学生成绩管理系统,实现了学生信息管理,课程管理,教师信息管理,学生成绩汇总,学生登录注册,教师和管理员的登录,个人信息修改等. 系统功能大致描述:基于javaweb实现学生成绩管 ...
- 用C语言学生成绩数据库排序功能设计,[c语言学生成绩管理系统]C语言学生成绩管理系统实验报告...
篇一 : C语言学生成绩管理系统实验报告 实 验 四:结构体(6学时) 实验目的: 1.更加灵活的使用数组作为函数参数: 2.初步掌握开发一个小型实用系统的基本方法: 3.初步掌握书写程序设计开发文档 ...
- Java私活200元,完成JavaSwing学生成绩管理系统(三)
Java私活200元,完成JavaSwing学生成绩管理系统(三) 需求 接到一个需求,说让使用JavaSwing+Mysql完成一个学生成绩管理系统,时间紧任务重. 具体需求如下: 用户需求 系统功 ...
- 【转】 [C/OC的那点事儿]NSMutableArray排序的三种实现(依赖学生成绩管理系统).
原文网址:http://blog.csdn.net/ministarler/article/details/17018839 c语言实现的学生成绩管理系统是面向过程的,而OC实现的学生成绩管理系统则是 ...
- KS006基于SSM实现学生成绩管理系统
项目简介 本系统是基于JSP+SSM+Mysql实现的学生成绩管理系统.主要实现的功能有教师管理.学生管理.课程管理.学生成绩管理. 难度等级:中等 技术栈 编辑器 Eclipse Version: ...
- php成绩管理前段模板,php学生成绩管理系统(模板).doc
. .. 计算机与通信学院 2013年春季学期 题 目:学生成绩管理系统 专业班级:软件工程基地班 姓 名:陶婷婷 学 号 目录 TOC \o "1-2" \h \u HYPERL ...
- 用链表c语言程序设计,C语言程序设计-基于链表的学生成绩管理系统
<C语言程序设计-基于链表的学生成绩管理系统>由会员分享,可在线阅读,更多相关<C语言程序设计-基于链表的学生成绩管理系统(18页珍藏版)>请在人人文库网上搜索. 1.华北科技 ...
- C语言学生成绩简单,C语言实现简单学生成绩管理系统.pdf
C语言实现简单学生成绩管理系统 这篇文章主要为大家详细介绍了C语言实现简单学生成绩管理系统,具有 定的参考价值,感兴趣的小伙伴们可以 参考 下 本文实例为大家分享了C语言实现学生成绩管理系统的具体代码 ...
- 权限管理系统中 管理员能看到所有用户的密码么_计算机毕设项目002之学生成绩管理系统...
计算机毕设项目之学生成绩管理系统 一. 项目名称 学生成绩管理系统 二. 项目简介 基于SSM框架的学生成绩管理系统,包含学生信息,教师信息,课程信息,成绩报告,系统设置,报表等功能模块. 管理员:a ...
最新文章
- WPF:Documents文档--Annomation批注(3)
- CosmoMC命令CAMB文件画功率谱
- 05-01-部署 WSUS on Windows 2019 Core
- linux清理swap内容,Linux如何清理swap.buffer及cache等缓存
- 在nodejs环境里使用浏览器环境下的document对象
- 油田 (Oil Deposits UVA - 572)
- LeetCode 1291. 顺次数(模拟)
- VS Code 关于SFTP上传文件到多服务器的配置
- pip强制更新包版本
- Oracle SGA优化
- python中常用的序列化模块_python 序列化,常用模块
- [xsy1144]选物品
- 解决CocosCreator 在微信小游戏中使用Socket.io 报错的问题
- 利用google网管工具,快速诊断网站(一)
- 不是吧!你还不懂DHT协议?
- ABB电磁流量计维修信号变送器维修41F/E4技术参数
- 从人工智能到人机智能
- Software Performance Testing - 全链路压测知识点整理
- 交互式图像分割论文合集
- 如何把html文件格式转为视频格式,如何将qlv格式转换成mp4-太平洋软件资讯-太平洋电脑网...