1、Java语言程序设计课程设计实训项目应用Java Swing GUI组件技术实现课程选课系统GU1.1应用Java Swing GUI组件技术实现课程选课系统GUI窗口(第4部分)1.1.1编程窗口内的确认和取消两个按钮的事件处理功能实现1、编程取消按钮的事件响应功能实现private void cancelButtonActionPerformed(java.awt.event.ActionEvent evt) this.dispose();2、编程确认按钮的事件响应方法的功能实现private void confrimButtonActionPerformed(java.awt.event
2、.ActionEvent evt) /* * (1)首先获得操作者所选的刚刚课程相关的信息 */ String selectedCourseName=(String)courseName.getSelectedItem(); String selectedTeacherName=(String)teacherName.getSelectedItem(); String selectedCourseTime=(String)courseTime.getSelectedItem(); String selectedCourseCreit=(String)courseCreit.getSelecte
3、dItem(); /* * (2)将选课相关的信息包装到PO对象中 */ /* * 将所输入的课程的相关信息保存到PO对象中 */ CourseInfoPO oneCourseInfoPO=new CourseInfoPO(); oneCourseInfoPO.setCourseGrade(Integer.parseInt(selectedCourseCreit); oneCourseInfoPO.setCourseName(selectedCourseName); oneCourseInfoPO.setCourseTeacher(selectedTeacherName); oneCourse
4、InfoPO.setCourseTime(selectedCourseTime); /* * (3)将PO对象保存到数据库表中,从缓存中获得当前已经登录成功的学生信息PO对象 */ StudentInfoPO currentLoginedStudentInfoPO=DataBase.loginedStudentInfoPO; /* * 识别是否重复选课,如果目前为重复选课,则不再将当前所选择的课程添加到所选课程列表中,而是直接退出。 */ if(currentLoginedStudentInfoPO.allSelectedCourseInfo.containsKey(selectedCours
5、eName) System.out.println(selectedCourseName+课程已经选择了,不允许重复选择该课程!n); this.dispose(); return; /* * (4)将所选的课程的相关信息缓存在当前登录成功的学生信息PO对象中以缓存(已选课列表) */ currentLoginedStudentInfoPO.allSelectedCourseInfo.put(selectedCourseName, oneCourseInfoPO); System.out.println(已经将所选的+selectedCourseName+课程添加到已选课程的列表中!n); t
6、his.dispose(); 1.1.2将选课窗口和课程管理功能类相互连接1、修改CourseManageImple类中的addOneCourse方法public void addOneCourse() /* * 识别选课者当前是否已经成功地登录本系统,否则将不允许选课 */ if(DataBase.loginedStudentInfoPO=null) System.out.println(你没有登录本系统,将不能进行选课!n); return; OnLineSelectCourseWindow oneOnLineSelectCourseWindow=new OnLineSelectCours
7、eWindow(); oneOnLineSelectCourseWindow.setVisible(true); 2、测试现在的功能实现效果 执行主窗口,将弹出主窗口。由于目前不能将注册和登录的信息永久保存,因此需要首先注册、登录,然后再进行选课。在弹出的在线选课的窗口内进行选择: 选课完毕后,在控制台中将出现下面的结果信息:1.1.3设计和实现退选课窗口的UI界面1、新建退选课窗口的UI界面类名称为RemoveCourseWindow,包名称为将出现下面的界面2、设置该窗口的主要属性3、在该窗口内添加如下的组件(1)改变文字为:课程名称(2)在课程名称列表中添加各个课程的名称1)Java程序
8、设计2)C程序设计3)C#程序设计4)操作系统5)数据结构6)数据库原理7)Oracle数据库(3)改变课程组合框的对象名称为removeCourseCompBox。4、在该窗口内添加两个按钮改变按钮的提示文字改变两个按钮的对象名称为confirmButton和cancelButton。为两个按钮添加事件响应1.1.4编程窗口内的确认和取消按钮的事件处理功能实现1、取消按钮的事件private void cancelButtonActionPerformed(java.awt.event.ActionEvent evt) this.dispose(); 2、确认按钮的事件处理private v
9、oid confirmButtonActionPerformed(java.awt.event.ActionEvent evt) /* * (1)获得学院退选的课程名称 */ String removeCourseName=(String)removeCourseCompBox.getSelectedItem(); /* * (2)从缓存中获得当前已经登录成功的学生信息PO对象 */ StudentInfoPO currentLoginedStudentInfoPO=DataBase.loginedStudentInfoPO; /* * 识别当前所退选的课程是否已经在选课列表中存在,如果没有选
10、择过该课程, * 则不能退选课程而是直接退出。 */ if(!currentLoginedStudentInfoPO.allSelectedCourseInfo.containsKey(removeCourseName) System.out.println(removeCourseName+课程没有选择过,系统将不进行本次的退选操作!n); this.dispose(); return; /* * (3)将所输入的课程名称的相关课程信息从登录成功的学生信息PO中删除掉 */ currentLoginedStudentInfoPO.allSelectedCourseInfo.remove(re
11、moveCourseName); System.out.println(已经将所选的+removeCourseName+课程从已选课程的列表中删除了!n); this.dispose(); 3、执行退选课窗口以测试现在的结果1.1.5将退选课窗口与课程管理的业务功能类相互连接1、修改CourseManageImple类中的removeOneCourse方法public void removeOneCourse() /* * 识别选课者当前是否已经成功地登录本系统,否则将不允许退选课 */ if(DataBase.loginedStudentInfoPO=null) System.out.pri
12、ntln(你没有登录本系统,将不能进行退选课!n); return; RemoveCourseWindow oneRemoveCourseWindow=new RemoveCourseWindow(); oneRemoveCourseWindow.setVisible(true); 2、测试现在的功能 执行主窗口,将弹出主窗口。由于目前不能将注册和登录的信息永久保存,因此需要首先注册、登录,然后再进行选课,最后才能退选某个课程该课程必须是他已经选过的课程名称。在弹出的退线选课的窗口内进行选择: 退选课完毕后,在控制台中将出现下面的结果信息: 如果退选没有选择的课程,则在控制台中出现下面的错误信息:
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1