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

📄 uqryinfo.pas

📁 可实现学生成绩管理系统的各种功能,无需登陆,直接查询学生的各种信息
💻 PAS
字号:
unit uQryInfo;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, StdCtrls, Buttons, ExtCtrls, DBCtrls, Grids, DBGrids;

type
  TfrmQryInfo = class(TForm)
    ActiveSource: TDataSource;
    DBGrdQry: TDBGrid;
    DBNavig: TDBNavigator;
    EdtQry: TEdit;
    Label1: TLabel;
    RadioGrpIndex: TRadioGroup;
    BitBtnClose: TBitBtn;
    BtnQuery: TButton;
    RadioGrpCond: TRadioGroup;
    procedure BitBtnCloseClick(Sender: TObject);
    procedure BtnQueryClick(Sender: TObject);
    procedure RadioGrpIndexClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmQryInfo: TfrmQryInfo;

implementation

uses uDm ;

{$R *.dfm}


procedure TfrmQryInfo.FormCreate(Sender: TObject);
begin
  ActiveSource.DataSet :=DMSchool.ADOQuery ;
  EdtQry.ImeMode := imAlpha  ;
  EdtQry.ImeName := ''  ;
  RadioGrpIndex.ItemIndex := 2 ;
  BtnQuery.OnClick(Sender);
end;

procedure TfrmQryInfo.BitBtnCloseClick(Sender: TObject);
begin
  Close ;
end;

procedure TfrmQryInfo.BtnQueryClick(Sender: TObject);
begin
  if RadioGrpIndex.ItemIndex = 0 then             // 学生信息查询
    if RadioGrpCond.ItemIndex = 0 then
      begin
        DmSchool.ADOQuery.Close ;                     // 按学生姓名
        DmSchool.ADOQuery.SQL.Clear ;
        DmSchool.ADOQuery.SQL.Add('SELECT SNO 学号, SNAME 姓名, SDEPT 系号, ');
        DmSchool.ADOQuery.SQL.Add('       SCLASS 班号, SSEX 性别, SAGE 年龄 FROM STUDENT ');
        DmSchool.ADOQuery.SQL.Add(' WHERE SNAME LIKE ''%' + EdtQry.Text + '%''');
        DmSchool.ADOQuery.Open ;
      end
    else
      if RadioGrpCond.ItemIndex = 1 then              // 按学生系号
        begin
          DmSchool.ADOQuery.Close ;
          DmSchool.ADOQuery.SQL.Clear ;
          DmSchool.ADOQuery.SQL.Add('SELECT SNO 学号, SNAME 姓名, SDEPT 系号, ');
          DmSchool.ADOQuery.SQL.Add('       SCLASS 班号, SSEX 性别, SAGE 年龄 FROM STUDENT ');
          DmSchool.ADOQuery.SQL.Add(' WHERE SDEPT LIKE ''%' + EdtQry.Text + '%''');
          DmSchool.ADOQuery.Open ;
        end
      else
        begin                                         // 按学生班号
          DmSchool.ADOQuery.Close ;
          DmSchool.ADOQuery.SQL.Clear ;
          DmSchool.ADOQuery.SQL.Add('SELECT SNO 学号, SNAME 姓名, SDEPT 系号, ');
          DmSchool.ADOQuery.SQL.Add('       SCLASS 班号, SSEX 性别, SAGE 年龄 FROM STUDENT ');
          DmSchool.ADOQuery.SQL.Add(' WHERE SCLASS LIKE ''%' + EdtQry.Text + '%''');
          DmSchool.ADOQuery.Open ;
        end
  else
    if RadioGrpIndex.ItemIndex = 1 then           // 课程信息查询
      if RadioGrpCond.ItemIndex = 0 then
        begin
          DmSchool.ADOQuery.Close ;                   // 按课程号
          DmSchool.ADOQuery.SQL.Clear ;
          DmSchool.ADOQuery.SQL.Add('SELECT CNO 课程号, CNAME 课程名称, ');
          DmSchool.ADOQuery.SQL.Add('       CTIME 学时数 FROM COURSE ');
          DmSchool.ADOQuery.SQL.Add(' WHERE CNO LIKE ''%' + EdtQry.Text + '%''');
          DmSchool.ADOQuery.Open ;
        end
      else
        begin
          DmSchool.ADOQuery.Close ;                   // 按课程名
          DmSchool.ADOQuery.SQL.Clear ;
          DmSchool.ADOQuery.SQL.Add('SELECT CNO 课程号, CNAME 课程名称, ');
          DmSchool.ADOQuery.SQL.Add('       CTIME 学时数 FROM COURSE ');
          DmSchool.ADOQuery.SQL.Add(' WHERE CNAME LIKE ''%' + EdtQry.Text + '%''');
          DmSchool.ADOQuery.Open ;
        end
    else                                          // 成绩信息查询
      if RadioGrpCond.ItemIndex = 0 then
        begin
          DmSchool.ADOQuery.Close ;                   // 按学号
          DmSchool.ADOQuery.SQL.Clear ;
          DmSchool.ADOQuery.SQL.Add('SELECT SNO 学号, CNO 课程号, ');
          DmSchool.ADOQuery.SQL.Add('       SCORE 分数 FROM SCORE ');
          DmSchool.ADOQuery.SQL.Add(' WHERE SNO LIKE ''%' + EdtQry.Text + '%''');
          DmSchool.ADOQuery.Open ;
        end
      else
        begin                                         // 按课程号
          DmSchool.ADOQuery.Close ;
          DmSchool.ADOQuery.SQL.Clear ;
          DmSchool.ADOQuery.SQL.Add('SELECT SNO 学号, CNO 课程号, ');
          DmSchool.ADOQuery.SQL.Add('       SCORE 分数 FROM SCORE ');
          DmSchool.ADOQuery.SQL.Add(' WHERE CNO LIKE ''%' + EdtQry.Text + '%''');
          DmSchool.ADOQuery.Open ;
        end
end;

procedure TfrmQryInfo.RadioGrpIndexClick(Sender: TObject);
begin
  RadioGrpCond.Items.Clear ;
  if RadioGrpIndex.ItemIndex = 0 then
    begin
      RadioGrpCond.Items.Add('姓名');
      RadioGrpCond.Items.Add('系号');
      RadioGrpCond.Items.Add('班号');
    end
  else
    if RadioGrpIndex.ItemIndex = 1 then
      begin
        RadioGrpCond.Items.Add('课程号');
        RadioGrpCond.Items.Add('课程名');
      end
    else
      begin
        RadioGrpCond.Items.Add('学号');
        RadioGrpCond.Items.Add('课程号');
      end ;
  RadioGrpCond.ItemIndex := 0 ;


  if (RadioGrpIndex.ItemIndex = 0) and (RadioGrpCond.ItemIndex = 0) and
     (RadioGrpIndex.ItemIndex = 1) and (RadioGrpCond.ItemIndex = 1) then
    begin
      EdtQry.ImeMode := imChinese  ;
      EdtQry.ImeName := '中文 (简体) - 智能 ABC'  ;
    end
  else
    begin
      EdtQry.ImeMode := imAlpha  ;
      EdtQry.ImeName := ''  ;
    end ;
  BtnQueryClick(Application) ;
end;

end.

⌨️ 快捷键说明

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