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

📄 course.~pas

📁 学生成绩管理系统
💻 ~PAS
字号:
unit course;

interface

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

type
  TCourseForm = class(TForm)
    DBGrid1: TDBGrid;
    GroupBox1: TGroupBox;
    GroupBox2: TGroupBox;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    Label1: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    Edit2: TEdit;
    Label3: TLabel;
    ComboBox1: TComboBox;
    Label4: TLabel;
    Edit3: TEdit;
    Label5: TLabel;
    Edit4: TEdit;
    Label6: TLabel;
    Edit5: TEdit;
    Label7: TLabel;
    Edit6: TEdit;
    Label8: TLabel;
    Edit7: TEdit;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    RadioButton3: TRadioButton;
    Database1: TDatabase;
    DataSource1: TDataSource;
    Query1: TQuery;
    Query1number: TStringField;
    Query1name: TStringField;
    Query1speciality: TStringField;
    Query1college: TStringField;
    Query1time: TStringField;
    Query1score: TIntegerField;
    Query1semester: TStringField;
    Query1book: TStringField;
    Query1operator: TStringField;
    Query1stamp: TDateTimeField;
    procedure BitBtn2Click(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure Database1Login(Database: TDatabase; LoginParams: TStrings);
    procedure RadioButton1Click(Sender: TObject);
    procedure RadioButton2Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure ComboBox1Exit(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure initiate;
    procedure LoadFromTable;
  end;

var
  CourseForm: TCourseForm;

implementation
  uses main;
{$R *.dfm}

procedure TCourseForm.BitBtn2Click(Sender: TObject);
begin
    Close;
end;
procedure TCourseForm.initiate;
begin
    Edit1.text:='';
    Edit2.Text:='';
    Edit3.text:='';
    Edit4.Text:='';
    Edit5.text:='';
    Edit6.Text:='';
    Edit7.text:='';
    ComboBox1.text:='';
end;
procedure TCourseForm.LoadFromTable;
begin
    Edit1.text:=Query1.FieldByName('number').AsString;
    Edit2.text:=Query1.FieldByName('name').AsString;
    ComboBox1.text:=Query1.FieldByName('speciality').AsString;
    Edit5.text:=Query1.FieldByName('college').AsString;
    Edit3.text:=Query1.FieldByName('time').AsString;
    Edit4.text:=IntToStr(Query1.FieldByName('score').AsInteger);
    Edit6.text:=Query1.FieldByName('semester').AsString;
    Edit7.text:=Query1.FieldByName('book').AsString;
end;
procedure TCourseForm.FormActivate(Sender: TObject);
var
    query2:TQuery;
begin
    DBGrid1.DataSource:=datasource1;
    DBGrid1.ReadOnly:=true;
    Datasource1.DataSet:=query1;
    query1.DatabaseName:='student';
    query1.Close;
    query1.sql.clear;
    query1.sql.add('select * from course');
    query1.open;
    initiate;
    if not query1.IsEmpty then
    begin
        LoadFromTable;
        Edit1.Enabled:=false;
        Edit2.SetFocus;
        RadioButton2.Checked:=true;
    end
    else
    begin
        Edit1.setfocus;
        RadioButton1.Checked:=true;
        RadioButton2.Enabled:=false;
        RadioButton3.Enabled:=false;
    end;
    query1number.displaylabel:='课程编号';
    query1name.DisplayLabel:='课程名';
    query1speciality.DisplayLabel:='专业名';
    query1college.DisplayLabel:='所属院系';
    query1time.displaylabel:='学时';
    query1score.DisplayLabel:='学分';
    query1semester.DisplayLabel:='开课学期';
    query1book.DisplayLabel:='教材名';
    query1operator.DisplayLabel:='操作员';
    query1stamp.DisplayLabel:='最后修改时间';
    query2:=TQuery.Create(self);
    query2.DatabaseName:='student';
    query2.close;
    query2.SQL.clear;
    query2.sql.add('select * from speciality');
    query2.Open;
    combobox1.Items.clear;
    while not query2.Eof do
    begin
        combobox1.Items.add(query2.fieldbyname('name').asstring);
        query2.Next;
    end;
    query2.Close;
    edit5.Enabled:=false;
end;

procedure TCourseForm.Database1Login(Database: TDatabase;
  LoginParams: TStrings);
begin
    loginparams.Clear;
    loginparams.add('user_name=administator');
    loginparams.Add('password=650124');
end;

procedure TCourseForm.RadioButton1Click(Sender: TObject);
begin
    initiate;
    Edit1.Enabled:=true;
    Edit1.SetFocus;
end;

procedure TCourseForm.RadioButton2Click(Sender: TObject);
begin
    Edit1.Enabled:=false;
    Edit2.SetFocus;
end;

procedure TCourseForm.BitBtn1Click(Sender: TObject);
begin
    query1.Close;
    query1.sql.clear;
    if radiobutton1.Checked then
    begin
        query1.sql.add('insert into course values(:s0,:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9)');
        query1.Params.clear;
        query1.Params.CreateParam(ftstring,'s0',ptinput);
        query1.Params[0].Value:=edit1.text;
        query1.Params.CreateParam(ftstring,'s1',ptinput);
        query1.Params[1].Value:=edit2.text;
        query1.Params.CreateParam(ftstring,'s2',ptinput);
        query1.Params[2].Value:=combobox1.text;
        query1.Params.CreateParam(ftstring,'s3',ptinput);
        query1.Params[3].Value:=edit5.text;
        query1.Params.CreateParam(ftstring,'s4',ptinput);
        query1.Params[4].Value:=edit3.text;
        query1.Params.CreateParam(ftInteger,'s5',ptinput);
        query1.Params[5].Value:=StrToInt(edit4.text);
        query1.Params.CreateParam(ftstring,'s6',ptinput);
        query1.Params[6].Value:=edit6.text;
        query1.Params.CreateParam(ftstring,'s7',ptinput);
        query1.Params[7].Value:=edit7.text;
        query1.Params.CreateParam(ftstring,'s8',ptinput);
        query1.Params[8].Value:=username;
        query1.Params.CreateParam(ftdatetime,'s9',ptinput);
        query1.Params[9].Value:=Date();
    end
    else if radiobutton2.checked then
    begin
        query1.sql.add('update course set name=:s0,speciality=:s1,college=:s2,time=:s3,score=:s4,semester=:s5,book=:s6,operator=:s7,stamp=:s8 where number=:s9');
        query1.Params.clear;
        query1.Params.CreateParam(ftstring,'s0',ptinput);
        query1.Params[0].Value:=edit2.text;
        query1.Params.CreateParam(ftstring,'s1',ptinput);
        query1.Params[1].Value:=combobox1.text;
        query1.Params.CreateParam(ftstring,'s2',ptinput);
        query1.Params[2].Value:=edit5.text;
        query1.Params.CreateParam(ftstring,'s3',ptinput);
        query1.Params[3].Value:=edit3.text;
        query1.Params.CreateParam(ftInteger,'s4',ptinput);
        query1.Params[4].Value:=StrToInt(edit4.text);
        query1.Params.CreateParam(ftstring,'s5',ptinput);
        query1.Params[5].Value:=edit6.text;
        query1.Params.CreateParam(ftstring,'s6',ptinput);
        query1.Params[6].Value:=edit7.text;
        query1.Params.CreateParam(ftstring,'s7',ptinput);
        query1.Params[7].Value:=username;
        query1.Params.CreateParam(ftdatetime,'s8',ptinput);
        query1.Params[8].Value:=Date();
        query1.Params.CreateParam(ftstring,'s9',ptinput);
        query1.Params[9].Value:=edit1.text;
    end
    else
    begin
        query1.SQL.Add('delete from course where number=:s0');
        query1.Params.clear;
        query1.Params.CreateParam(ftstring,'s0',ptinput);
        query1.Params[0].Value:=edit1.text;
    end;
    query1.Prepare;
    query1.ExecSQL;
    query1.close;
    query1.SQL.clear;
    query1.SQL.Add('select * from course');
    query1.Params.clear;
    query1.open;
    if not query1.IsEmpty then
    begin
        LoadFromTable;
        radioButton2.Checked:=true;
        RadioButton2.Enabled:=true;
        radioButton3.Enabled:=true;
    end
    else
    begin
        RadioButton1.checked:=true;
        RadioButton2.Enabled:=false;
        RadioButton3.Enabled:=false;
    end;
end;

procedure TCourseForm.ComboBox1Exit(Sender: TObject);
var
    Query2:Tquery;
begin
    query2:=TQuery.Create(self);
    query2.DatabaseName:='student';
    query2.close;
    query2.SQL.Clear;
    query2.SQL.add('select * from speciality where name=:s0');
    query2.Params.clear;
    query2.Params.CreateParam(ftstring,'s0',ptinput);
    query2.Params[0].Value:=combobox1.text;
    query2.open;
    edit5.text:=query2.fieldByname('units').asstring;
    query2.close;
end;

end.

⌨️ 快捷键说明

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