?? scoreform.pas
字號:
unit ScoreForm;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, StdCtrls, Buttons, DB, ADODB;
type
TScore = class(TForm)
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
GroupBox3: TGroupBox;
BitBtn1: TBitBtn;
Label4: TLabel;
Edit3: TEdit;
Label5: TLabel;
Label6: TLabel;
Edit2: TEdit;
Edit1: TEdit;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
DBGrid1: TDBGrid;
Edit4: TEdit;
BitBtn4: TBitBtn;
ADOCommand1: TADOCommand;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
ADOConnection1: TADOConnection;
Label1: TLabel;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BitBtn2Click(Sender: TObject);
procedure BitBtn4Click(Sender: TObject);
procedure Edit4KeyPress(Sender: TObject; var Key: Char);
procedure BitBtn3Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure showscore();
end;
var
Score: TScore;
courseNum:string;//保存課程編號
implementation
{$R *.dfm}
//------------顯示某課程學(xué)生的分?jǐn)?shù)-------------------
procedure TScore.BitBtn2Click(Sender: TObject);
begin
showscore();
end;
//--------------修改選課學(xué)生的成績--------------
procedure TScore.BitBtn4Click(Sender: TObject);
var
num:string;
begin
if edit4.Text='' then
begin
showmessage('必須輸入有效成績');
exit;
end;
num:=trim(dbgrid1.Fields[0].Text);
if num='' then
begin
showmessage('請先選中一個選課學(xué)生');
exit;
end;
//修改學(xué)生成績
adocommand1.CommandText:='update 成績表 set 成績='''+trim(edit4.Text)+''' where 編號='''+num+'''';
adocommand1.Execute;
showscore();
end;
//------------顯示某課程學(xué)生的分?jǐn)?shù)-------------------
procedure TScore.showscore;
var
pyCode,courseID,courseName:string;//保存輸入的拼音碼和課程名稱,課程編號
begin
courseNum:='';//清空保存在全局變量中的課程編號
pyCode:=trim(edit1.Text);
courseID:=trim(edit2.Text);
courseName:=trim(edit3.Text);
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select a.編號,b.課程名稱,a.學(xué)號,c.姓名,a.成績 from 成績表 a,課程信息 b,學(xué)生信息 c');
adoquery1.SQL.Add('where (a.課程編號 like ''%'+courseID+'%'')and(b.拼音碼 like ''%'+pyCode+'%'')and(b.課程名稱 like ''%'+courseName+'%'')');
adoquery1.SQL.Add('and(a.課程編號=b.課程編號)and(a.學(xué)號=c.學(xué)號)and(a.是否已確定成績=''N'')');
adoquery1.Open;
if adoquery1.RecordCount>0 then //如果有查詢結(jié)果,則保存課程編號
courseNum:=courseID;
end;
//----------【成績】文本框中只允許輸入數(shù)字,小數(shù)點--------
procedure TScore.Edit4KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9','.',#13,#8]) then
key:=#0;
end;
//---------調(diào)用儲存過程,提交成績--------------
procedure TScore.BitBtn3Click(Sender: TObject);
begin
adocommand1.CommandText:='exec sf_成績提交 '''+courseNum+'''';
adocommand1.Execute;
showscore();
end;
//---------調(diào)用儲存過程,結(jié)束選課--------------
procedure TScore.BitBtn1Click(Sender: TObject);
begin
adocommand1.CommandText:='exec sf_終止選課';
adocommand1.Execute;
showmessage('結(jié)束選課成功,請選擇輸入要輸入成績的課程');
end;
procedure TScore.FormClose(Sender: TObject; var Action: TCloseAction);
begin
action:=cafree;
end;
end.
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -