?? studentsys.~pas
字號:
unit studentsys;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, ComCtrls, DB, DBTables, StdCtrls, Grids, DBGrids, Spin,
ExtCtrls, DBCtrls, Mask;
type
TForm12 = class(TForm)
SpeedButton1: TSpeedButton;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
T_course_1: TTable;
DS_course_1: TDataSource;
T_counter_K: TTable;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
i_name_1: TEdit;
i_credit_hour_1: TSpinEdit;
i_period_1: TSpinEdit;
Label4: TLabel;
i_intro_1: TMemo;
Label5: TLabel;
o_course_1: TDBGrid;
B_submit: TButton;
B_reset: TButton;
T_teacher_info: TTable;
Q_students: TQuery;
DS_student_info: TDataSource;
T_students: TTable;
B_print_list: TButton;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
o_course_2: TDBGrid;
o_student_list: TDBGrid;
i_score: TDBGrid;
DS_students: TDataSource;
T_course_2: TTable;
i_state_1: TDBRadioGroup;
Label9: TLabel;
i_teacher: TDBEdit;
Label10: TLabel;
procedure SpeedButton1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure B_resetClick(Sender: TObject);
procedure i_state_1Click(Sender: TObject);
procedure o_course_1CellClick(Column: TColumn);
procedure B_submitClick(Sender: TObject);
procedure B_print_listClick(Sender: TObject);
procedure o_course_2CellClick(Column: TColumn);
procedure TabSheet2Show(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form12: TForm12;
implementation
uses student, teach, teacherlogin;
{$R *.dfm}
procedure TForm12.SpeedButton1Click(Sender: TObject);
begin
form12.Hide;
form3.show;
end;
procedure TForm12.FormShow(Sender: TObject);
begin
T_teacher_info.Filter:='ID='''+Form8.i_user.Text+'''';
T_teacher_info.Filtered:=True;
T_teacher_info.Open;
Form12.Caption:='課程管理系統——用戶:'+T_teacher_info['NAME'];
end;
procedure TForm12.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Application.Terminate;
end;
procedure TForm12.B_resetClick(Sender: TObject);
begin
i_state_1.ItemIndex:=0; //申請初始化到增開新課
i_state_1Click(nil); //調用申請修改程序
i_name_1.Text:=''; //清除課程名
i_credit_hour_1.Text:='0'; //初始化學分
i_period_1.Text:='0'; //初始化學時
i_intro_1.Lines.Clear; //清除課程簡介
end;
procedure TForm12.i_state_1Click(Sender: TObject);
begin
if i_state_1.ItemIndex>0 then //如果不是新開課程,則顯示列表
begin
T_course_1.Filter:='TEACHER='''+Form8.i_user.Text+''' AND STATE<>''5'' AND STATE<>''1''';
T_course_1.Filtered:=True; //獲取當前教師所開的課程
T_course_1.Open; //不包括已刪除和申請刪除的課程
o_course_1.Enabled:=True; //激活已開課程列表
o_course_1CellClick(nil); //顯示當前課程信息
end
else
begin
T_course_1.Close; //如果是新開課程 ,關閉已開課程數據表
o_course_1.Enabled:=False; //取消課程列表顯示
end;
end;
procedure TForm12.o_course_1CellClick(Column: TColumn); //如果是刪除或修改舊的課程,在單擊課程列表時,將在輸入框中顯示課程的詳細信息。
begin
if T_course_1.Active then //判斷課程信息表是否激活
begin
i_name_1.Text:=T_course_1['NAME']; //提取課程名稱
i_credit_hour_1.value:=T_course_1['CREDIT_HOUR']; //提取課程學分
i_period_1.Value :=T_course_1['PERIOD']; //提取課程學分
i_intro_1.Lines.Clear; //清除課程簡介
i_intro_1.Lines.Add(T_course_1['INTRO']); //提取課程簡介
end;
end;
procedure TForm12.B_submitClick(Sender: TObject); //表單的提交
var
counter:integer;
course_id:string;
begin
case i_state_1.ItemIndex of //根據不同申請,分別處理
0: //如果增加新課
begin
//獲取課程計數
T_counter_K.Open; //打開計數器表
counter:=T_counter_K['COUNTER_VALUE'];
inc(counter);
T_counter_K.Edit;
T_counter_K['COUNTER_VALUE']:=counter;
T_counter_K.Post;
T_counter_K.Close;
//合成課程編號
//course_id:=IntToStr(counter);
course_id:='0000'+IntToStr(counter); //將計數值轉換為字符串
// course_id:=copy(course_id,length(course_id)-6,6); //將截取固定長度字符串
label10.caption:=course_id;
course_id:=FormatDateTime('yyyy',now)+course_id; //添加年份信息
//添加課程信息
T_course_1.Filtered:=False;
T_course_1.Open;
T_course_1.AppendRecord([course_id,i_name_1.Text,i_teacher.text,i_credit_hour_1.value,i_period_1.value, '', '', i_intro_1.Lines,'0']);
end;
1: //申請刪除
begin
T_course_1.Filtered:=False; //取消過濾
T_course_1.Edit; //進行修改
T_course_1['STATE']:='1'; //改變課程狀態
T_course_1.Post; //提交修改
end;
2: //申請修改
begin
T_course_1.Filtered:=False; //取消過濾
T_course_1.Edit;
T_course_1['NAME']:=i_name_1.Text;
T_course_1['CREDIT_HOUR']:=i_credit_hour_1.Value;
T_course_1['PERIOD']:=i_period_1.Value;
T_course_1['INTRO']:=i_intro_1.Lines.Text;
T_course_1['STATE']:='2'; //改變課程狀態
T_course_1.Post;
end;
end;
B_resetClick(nil); //恢復表單
end;
procedure TForm12.B_print_listClick(Sender: TObject);
begin
showmessage('此系統暫沒有配置打印機,此功能目前無效!');
end;
procedure TForm12.o_course_2CellClick(Column: TColumn);
begin
Q_students.close;
Q_students.Params.ParamValues ['COURSE']:=T_course_1['ID'];
Q_students.Open ;
end;
procedure TForm12.TabSheet2Show(Sender: TObject);
begin
T_course_1.Filter :='TEACHER='''+form8.i_user.Text +'''AND state=''3''';
T_course_1.Filtered :=true;
T_course_1.Open ;
o_course_2CellClick(nil);
T_students.Open;
end;
procedure TForm12.Button1Click(Sender: TObject);
begin
// showmessage('不是期初不能提交表單!');
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -