⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 searchgrade.java

📁 运行在JDK下的学生成绩管理系统源码.可以查询数据
💻 JAVA
字号:
package studentms;

import com.borland.jbcl.layout.*;
import java.awt.*;
import java.sql.*;
import javax.swing.*;
import javax.swing.table.*;
import java.util.*;
import java.awt.event.*;
import java.math.*;

public class searchGrade extends JFrame {
  XYLayout xYLayout1 = new XYLayout();
  JComboBox jCType = new JComboBox();
  JComboBox jCOper = new JComboBox();
  JTextField jTValue = new JTextField();
  JLabel jLabel1 = new JLabel();
  JLabel jLabel2 = new JLabel();
  JLabel jLabel3 = new JLabel();
  JButton jBOK = new JButton();
  JButton jBReset = new JButton();
  JButton jBExit = new JButton();

  Database DB=new Database();
  ResultSet rs ;
  String sql=new String();


  public searchGrade() {
    try {
      jbInit();
    }
    catch(Exception e) {
      e.printStackTrace();
    }
  }
  private void jbInit() throws Exception {
    this.getContentPane().setLayout(xYLayout1);
    jTValue.setFont(new java.awt.Font("Dialog", 0, 12));
    jTValue.setText("");
    jLabel1.setFont(new java.awt.Font("Dialog", 0, 12));
    jLabel1.setText("查询类别:");
    jLabel2.setFont(new java.awt.Font("Dialog", 0, 12));
    jLabel2.setText("操作符:");
    jLabel3.setFont(new java.awt.Font("Dialog", 0, 12));
    jLabel3.setText("待查询值:");
    jCType.setFont(new java.awt.Font("Dialog", 0, 12));
    jCOper.setFont(new java.awt.Font("Dialog", 0, 13));
    jBOK.setFont(new java.awt.Font("Dialog", 0, 12));
    jBOK.setText("确  定");
    jBOK.addActionListener(new searchGrade_jBOK_actionAdapter(this));
    jBReset.setFont(new java.awt.Font("Dialog", 0, 12));
    jBReset.setText("重  置");
    jBReset.addActionListener(new searchGrade_jBReset_actionAdapter(this));
    jBExit.setFont(new java.awt.Font("Dialog", 0, 12));
    jBExit.setText("取  消");
    jBExit.addActionListener(new searchGrade_jBExit_actionAdapter(this));
    xYLayout1.setWidth(342);
    xYLayout1.setHeight(148);
    this.setTitle("成绩查询");
    this.getContentPane().add(jLabel1, new XYConstraints(27, 21, 88, 23));
    this.getContentPane().add(jCType,  new XYConstraints(27, 50, 103, 23));
    this.getContentPane().add(jCOper,  new XYConstraints(144, 50, 60, 23));
    this.getContentPane().add(jTValue,   new XYConstraints(220, 50, 83, 23));
    this.getContentPane().add(jLabel2,  new XYConstraints(143, 21, 60, 20));
    this.getContentPane().add(jLabel3, new XYConstraints(218, 21, 85, -1));
    this.getContentPane().add(jBOK,  new XYConstraints(46, 100, 66, 24));
    this.getContentPane().add(jBReset, new XYConstraints(134, 100, 66, 24));
    this.getContentPane().add(jBExit,  new XYConstraints(222, 100, 66, 24));
    jCType.addItem("学号");
    jCType.addItem("总分") ;
    jCType.addItem("语文") ;
    jCType.addItem("数学") ;
    jCType.addItem("英语") ;
    jCType.addItem("综合") ;
    jCOper.addItem("=");
    jCOper.addItem("<");
    jCOper.addItem(">");
  }

  //退出
  void jBExit_actionPerformed(ActionEvent e) {
       this.dispose() ;
  }

  // 重置
  void jBReset_actionPerformed(ActionEvent e) {
       jCType.setSelectedIndex(0);
       jCOper.setSelectedIndex(0);
       jTValue.setText(null);
  }

  //参数为成绩信息类,显示查询到的内容
 void setContent(gradeInfo result,ResultSet rs){
   try{
     result.jTNum.setText(rs.getString("Num"));
     result.jTTotal.setText(rs.getString("Total").toString() );
     result.jTChinese.setText(rs.getString("Chinese").toString() );
     result.jTMath.setText(rs.getString("Math").toString() );
     result.jTEnglish.setText(rs.getString("English").toString() );
     result.jTComposite.setText(rs.getString("Composite").toString() );
     result.setNull();
   }
   catch(SQLException ex){
   }
 }

 //显示结果集为多个时的列表
 void listShow(){
   gradeShow gradeList=new gradeShow();
   Dimension dlgSize = gradeList.getPreferredSize();
   Dimension frmSize = getSize();
   Point loc = getLocation();
   gradeList.setLocation((frmSize.width - dlgSize.width) / 2 + loc.x, (frmSize.height - dlgSize.height) / 2 + loc.y);
   gradeList.pack();
   gradeList.show() ;
   gradeList.resultShow(rs);
 }


//显示查询结果
  void showResult(ResultSet rs){
    menuClass.graInfo.setLocation(200, 160);
    menuClass.graInfo.pack();
    menuClass.graInfo.show();
    try{
      menuClass.graInfo.jTNum.setText(rs.getString("Num"));
      menuClass.graInfo.jTTotal.setText(rs.getString("Total").toString() );
      menuClass.graInfo.jTChinese.setText(rs.getString("Chinese").toString() );
      menuClass.graInfo.jTMath.setText(rs.getString("Math").toString() );
      menuClass.graInfo.jTEnglish.setText(rs.getString("English").toString() );
      menuClass.graInfo.jTComposite.setText(rs.getString("Composite").toString() );
    }
    catch(SQLException ex){
    }
    menuClass.graInfo.setAbled(false);
    menuClass.graInfo.setButton(true, true, true, false, false);
    menuClass.graInfo.nullSet();
  }
  //查询
  void jBOK_actionPerformed(ActionEvent e) {
    if(jTValue.getText().equals("")){
      JOptionPane.showMessageDialog(null, "待查询值不可为空!");
    }
    else{
      sql = "select * from gradeTable ";

      //根据选项判断查询的类型
      if (jCType.getSelectedIndex() == 0) {
        sql = sql + " where  Num" + jCOper.getSelectedItem().toString() +
            Integer.parseInt(jTValue.getText());
      }
      else if (jCType.getSelectedIndex() == 1) {
        sql = sql + " where  Total" + jCOper.getSelectedItem().toString() +
            Integer.parseInt(jTValue.getText());
      }
      else if (jCType.getSelectedIndex() == 2) {
        sql = sql + " where  Chinese" + jCOper.getSelectedItem().toString() +
            Integer.parseInt(jTValue.getText());
      }
      else if (jCType.getSelectedIndex() == 3) {
        sql = sql + " where  Math" + jCOper.getSelectedItem().toString() +
            Integer.parseInt(jTValue.getText());
      }
      else if (jCType.getSelectedIndex() == 4) {
        sql = sql + " where  English" + jCOper.getSelectedItem().toString() +
            Integer.parseInt(jTValue.getText());
      }
      else if (jCType.getSelectedIndex() == 5) {
        sql = sql + " where  Composite" + jCOper.getSelectedItem().toString() +
            Integer.parseInt(jTValue.getText());
      }

      rs = DB.getResult(sql);
      try {
        if (rs.first()) { //判断记录是否存在
          if (rs.isLast()) { //判断是否只有一条记录,若是,直接显示,否则显示列表
            rs.beforeFirst();
            rs.next();
            showResult(rs);
            this.dispose();
          }
          else {
            listShow();
            this.dispose();
          }
        }
        else {
          JOptionPane.showMessageDialog(null, "此人不存在!");
        }
      }
      catch (SQLException ex) {
        JOptionPane.showMessageDialog(null, " search failed!");
      }
    }

  }
}


//*************** 以下为监听类部分 **************
class searchGrade_jBExit_actionAdapter implements java.awt.event.ActionListener {
  searchGrade adaptee;

  searchGrade_jBExit_actionAdapter(searchGrade adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jBExit_actionPerformed(e);
  }
}

class searchGrade_jBReset_actionAdapter implements java.awt.event.ActionListener {
  searchGrade adaptee;

  searchGrade_jBReset_actionAdapter(searchGrade adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jBReset_actionPerformed(e);
  }
}

class searchGrade_jBOK_actionAdapter implements java.awt.event.ActionListener {
  searchGrade adaptee;

  searchGrade_jBOK_actionAdapter(searchGrade adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jBOK_actionPerformed(e);
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -