简单实现Java版学生管理系统

本文实例为大家分享了Java实现学生管理系统的具体代码,供大家参考,具体内容如下

package BookDemo_1; 

import javax.swing.*; 

import java.awt.*;
import java.awt.event.*; 

public class Test {
  public static void main(String[] args) {
    StudentSys stuSys=new StudentSys("学生管理系统");
    stuSys.initWin();
  }
}
class StudentSys extends JFrame{ 

  private JPanel p1,p2,p3,combop;
  private JTabbedPane tab;
  private Container container;
  private JButton b1,b2;
  private Listener listener;
  private Label nameLabel;
  private Label gradeLabel;
  private Label showLabel;
  private JTextField textName;
  private JTextField textGrade;
  private TextArea showGradeArea;
  /*
  * 查找
  * */
  private Label searchLabel;
  private JTextField searchText;
  private JButton sBut;
  private JTextField resultText;
  private String[] name;
  private String[] grade; 

  /*
  * 排序
  * */
  private TextArea showTextArea;
  private JButton sortBut;
  private int countNum=0;
  private JButton clearBut;
  public StudentSys(String str){
    super(str); 

    this.name=new String[100];
    this.grade=new String[100];
    listener = new Listener();
    tab = new JTabbedPane(JTabbedPane.TOP);
    //容器
    container = this.getLayeredPane();
    //对象化面板
    combop = new JPanel();
    p1 = new JPanel();
    p2 = new JPanel();
    p3 = new JPanel(); 

    b1 =new JButton("确认添加");
    b2 =new JButton("撤回添加");
    nameLabel =new Label("姓名");
    gradeLabel =new Label("成绩"); 

    showLabel=new Label("当前记录为零!             "); 

    textName =new JTextField(15);
    textGrade =new JTextField(15);
    showGradeArea=new TextArea(); 

    /*
    * 查找
    * */
    searchLabel=new Label("请输入姓名:");
    searchText=new JTextField(15);
    sBut=new JButton("确认查找");
    resultText=new JTextField(15);
    /*
    * 排序
    * */
    showTextArea=new TextArea();
    sortBut=new JButton("成绩排序");
    clearBut=new JButton("清空数据");
  }
  public void initWin(){
    this.setBounds(300, 300, 500, 400);
    this.addWindowListener(new WindowAdapter(){
      public void windowClosing(WindowEvent e) {
        super.windowClosing(e);
        System.exit(0);
      }});
      layoutWin();
      this.setVisible(true);
  }
  private void layoutWin(){ 

    tab.add(p1,"成绩输入");
    tab.add(p2,"成绩查询");
    tab.add(p3,"成绩排序");
    combop.add(new JLabel("学生信息管理系统"));
    container.setLayout(new BorderLayout());
    container.add(combop,BorderLayout.NORTH);
    container.add(tab,BorderLayout.CENTER); 

    Container con1=new Container();
    con1.setLayout(new FlowLayout());
    con1.add(nameLabel);
    con1.add(textName); 

    con1.add(gradeLabel);
    con1.add(textGrade);
    p1.add(con1,BorderLayout.NORTH);
    p1.add(con1);
    p1.add(showGradeArea); 

    Container con2=new Container();
    con2.setLayout(new FlowLayout());
    con2.add(b1);
    con2.add(b2);
    con2.add(showLabel);
    p1.add(con2);
    b1.addActionListener(listener);
    b2.addActionListener(listener);
    /*
    * 查找布局
    * */ 

    Container con3=new Container();
    con3.setLayout(new FlowLayout());
    con3.add(searchLabel);
    con3.add(searchText);
    con3.add(sBut);
    p2.add(con3,BorderLayout.NORTH);
    sBut.addActionListener(listener);
    p2.add(resultText);
    /*
    * 排序布局
    * */
    p3.add(showTextArea);
    p3.add(sortBut);
    p3.add(clearBut);
    sortBut.addActionListener(listener);
    clearBut.addActionListener(listener);
  }
  /*
  * java内部类实现ActionListener接口
  * */
  class Listener implements ActionListener{
    @Override
      public void actionPerformed(ActionEvent e) { 

      if(e.getSource()==b1){ 

        if((textName.getText().equals(""))||(textGrade.getText().equals(""))){
          showLabel.setText("添加失败(姓名,成绩不能有空)!");
        }
        else{
          name[countNum]=textName.getText();
          grade[countNum]=textGrade.getText();
          countNum++;
          String area="添加成功,当前有"+countNum+"条记录";
          showLabel.setText(area);
          sortMess(false);
          textName.setText("");
          textGrade.setText("");
        } 

      }
      if(e.getSource()==b2){
        if(countNum>0){
          countNum--;
          String area="撤回成功,当前有"+countNum+"条记录";
          showLabel.setText(area);
          sortMess(false);
        }
      }
      if(e.getSource()==sBut){
        if(!searchText.getText().equals("")){
          searchMess(searchText.getText());
        }
      }
      if(e.getSource()==sortBut){
        sortMess(true);
      }
      if(e.getSource()==clearBut){
        if(!showTextArea.getText().equals("")){
          showTextArea.setText("");
         }
      }
    } 

    public void sortMess(boolean sign) {
      // TODO Auto-generated method stub
      if(sign){
        for(int i=0;i<countNum;i++){
          for(int j=i+1;j<countNum;j++){
            if(Integer.parseInt(grade[i])<Integer.parseInt(grade[j])){
              String s1,s2;
              s1=name[i];
              s2=grade[i]; 

              name[i]=name[j];
              grade[i]=grade[j]; 

              name[j]=s1;
              grade[j]=s2;
            }
          }
        }
      }else{  

        if(!showGradeArea.getText().equals("")){
          showGradeArea.setText("");
        }
      }
      for(int i=0;i<countNum;i++){
        String content="姓名:"+name[i]+"\t"+"成绩"+grade[i];
        if(sign)showTextArea.append(content+"\n");
        else showGradeArea.append(content+"\n");
      }
    } 

    public void searchMess(String n) {
      // TODO Auto-generated method stub 

      for(int i=0;i<countNum;i++){
        if(name[i].equals(n)){
          String content="姓名:"+name[i]+","+"成绩"+grade[i];
          resultText.setText(content);
          return;
        }
      }
      resultText.setText("未找到该学生!");
    }
  }
} 

以上就是本文的全部内容,希望对大家学习Java程序设计有所帮助。

(0)

相关推荐

  • java学生信息管理系统设计

    本例的学生信息添加进入数据库的事务(可以提交事务,事务回滚,用本地线程完善) 主页面index.jsp <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <htm

  • Java+Mysql学生管理系统源码

    最近正在学java和数据库,想起以前写的学生管理系统,都是从网上下载,敷衍了事.闲来无事,也就自己写了一个,不过功能实现的不是很多. 开发语言:java: 开发环境:Mysql, java: 开发工具:eclipse 开发此案例,首先得在电脑上有java开发环境和Mysql, java开发环境与Mysql的搭建,就不再叙述了,如果需要,请联系我最下面的联系方式:dingyelf@aliyun.com 此次系统比较简易:数据库中只有一个表:stu;功能:能够对学生增加.删除.修改. 开发步骤:  

  • 一个简单的java学生寝室查询系统

    本文实例为大家分享了java学生寝室查询系统的具体代码,供大家参考,具体内容如下 前端部分: index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>AHPU Freshman dormitory inquiry</title> <script src="confirm.js

  • java学生信息管理系统设计(2)

    本例的学生信息添加进入数据库的事务(可以提交事务,事务回滚,用本地线程完善) 主页面index.jsp <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <htm

  • 简单实现Java版学生管理系统

    本文实例为大家分享了Java实现学生管理系统的具体代码,供大家参考,具体内容如下 package BookDemo_1; import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Test { public static void main(String[] args) { StudentSys stuSys=new StudentSys("学生管理系统"); stuSys.initWi

  • Java版学生管理系统

    本文实例为大家分享了Java版学生管理系统的具体代码,供大家参考,具体内容如下 学生类 //学生类 public class Student {     //学号     private int sid;     //姓名     private String name;     //年龄     private int age;     //地址     private String address;     //创建构造方法     public Student(){       }    

  • Java实现学生管理系统(IO版)

    本文实例为大家分享了Java实现学生管理系统的具体代码,供大家参考,具体内容如下 图解:  cade:  student.java /*  * 这是我的学生类  */ public class Student {     //学号     private String id;     //姓名     private String name;     //年龄     private String age;     //居住地     private String address;       

  • Java实现学生管理系统

    项目描述:通过管理员帐号登录,对学员信息进行管理.可以实现学员信息的增加.修改.删除.查询. 知识点:数组.do{}while循环.for循环.if语句.switch条件语句 学生管理系统的流程图 import java.util.Scanner; public class Stu{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); boolean flag = false; int stuN

  • Java版水果管理系统源码

    水果管理系统Java版分享给大家. 主类 FruitsDemo /** * 功能: * 1. 查看所有的水果 * 2. 添加新的水果(添加的时候判断水果名是否有重复) * 3. 对所有的水果进行排序(价格排序.库存排序) * 4. 删除指定的水果 * 5. 退出系统 * * 注意: * 1. 每种水果都必须有水果id,水果名,水果数量,水果价格 * 2. 添加水果时,要由用户输入水果名.数量和价格 * 3. 删除水果时要二次确认 * * 评分依据: 功能实现的情况,代码规范性(命名规范.格式规范

  • Java实现学生管理系统(控制台版本)

    目录 前言介绍 创建学生类Student main方法实现CRUD 查询方法 添加方法 删除方法 修改方法 控制台打印 前言介绍 最近很多同学找我帮忙做一些课程设计或Web前端大作业.其中控制台项目应该是初学者必须经历的一个过程.作为java初学者这个控制台版本的学生信息管理系统十分合适.用到的技术也是最简单的JavaList集合.变量的声明.对象的创建.一些基本的while语句.switch语句.循环遍历等基础语法.一个最基础版本的控制台学生管理系统也就是CRUD功能. 直接上完整代码 创建学

  • Java实现学生管理系统详解流程

    目录 学生管理系统 项目介绍 JavaSwing 功能展示 使用说明 遇到的问题 JavaWeb 功能展示 使用说明 遇到的问题 最后 学生管理系统 前言:这个是大二做的课设(还是学生管理系统…),理论上虽然是4个人一组一起做的,但是,注意这个“但是”,还是我一个人承担了所有…代码和文档基本都是我一个人写的,当初直接肝得吐血,这也是为啥后面的 Web 版部分功能没有完成的原因. 项目介绍 项目分为一个JavaSwing写的GUI桌面应用和一个半成品的Web应用,下图是项目的整体功能结构展示 Ja

  • java实现学生管理系统(面向对象)

    本文实例为大家分享了java实现学生管理系统的具体代码,供大家参考,具体内容如下 import java.util.Iterator; import java.util.Scanner; import java.util.Set; import java.util.TreeSet; /** * 学生管理系统 * 1.添加学生(不可以重复添加,学生的学号决定是否为同一个学生,学生按照学号进行排序) * 2.可以查看学生信息(包括,学号,姓名,性别,联系电话,年龄) * a.查看所有学生信息 * b

  • 基于Python实现面向对象版学生管理系统

    目录 一.目标 二.系统需求 三.准备程序文件 1. 分析 2. 创建程序文件 四.书写程序 1. student.py 2. 管理系统需求 3. main.py 4. 定义系统功能函数 4.1 添加学生 4.2 删除学生 4.3 修改学生信息 4.5 查询学生信息 4.6 显示所有学生信息 4.7 保存学生信息 4.8 加载学生信息 五.源代码 main.py student.py managerSystem.py 六.总结 一.目标 了解面向对象开发过程中类内部功能的分析方法 了解常用系统功

随机推荐