📄 stu_use.pas
字号:
ADOQuery1.Close ;
ADOQuery1.SQL.Clear ;
ADOQuery1.SQL.Add('SELECT select_info.achieve_time AS 学期,course.c_name AS 课程名称,');
ADOQuery1.SQL.Add('course.credit_hour AS 学分,select_info.score AS 分数');
ADOQuery1.SQL.Add('FROM course,select_info,teach_info');
ADOQuery1.SQL.Add('where course.c_id=select_info.c_id and stu_no='''+user_no+''' and course.c_id=teach_info.c_id and teach_info.t_name='''+Edit5.Text+'''');
ADOQuery1.Open ;
end;
3://按完成时间
begin
ADOQuery1.Close ;
ADOQuery1.SQL.Clear ;
ADOQuery1.SQL.Add('SELECT select_info.achieve_time AS 学期,course.c_name AS 课程名称,');
ADOQuery1.SQL.Add('course.credit_hour AS 学分,select_info.score AS 分数');
ADOQuery1.SQL.Add('FROM course,select_info');
ADOQuery1.SQL.Add('where course.c_id=select_info.c_id and stu_no='''+user_no+''' and achieve_time='''+Edit5.Text+'''');
ADOQuery1.Open ;
end;
end;
end;
end;
procedure TForm4.ComboBox5Change(Sender: TObject);
var
str:string;
begin
ChangetermToInt(ComboBox5.ItemIndex,str);
Edit8.Text := str ;
end;
procedure TForm4.ComboBox2Change(Sender: TObject);
var
str:string;
begin
ChangetermToInt(combobox2.ItemIndex,str);
Edit6.Text := str ;
end;
procedure TForm4.ComboBox4Change(Sender: TObject);
var
str:string ;
begin
ChangetermToInt(combobox4.ItemIndex,str);
Edit7.Text := str;
end;
procedure TForm4.Button17Click(Sender: TObject);//查询退课
begin
DBGrid3.Visible := TRUE ;
BUTTON18.Visible:= true;
ADOQuery1.Close ;
ADOQuery1.SQL.Clear ;
ADOQuery1.SQL.Add('SELECT c_name AS 课程名称,X.c_id AS 课程号,c_time AS 学分,');
ADOQuery1.SQL.Add('credit_hour AS 学时,t_name AS 老师,arrange AS 时间和地点');
ADOQuery1.SQL.Add('FROM course AS X,teach_info AS Y');
ADOQuery1.SQL.Add('WHERE X.c_id=Y.c_id and X.c_id in(SELECT c_id ');
ADOQuery1.SQL.Add('FROM select_info WHERE stu_no='''+user_no+''' and start_time='''+Edit8.Text+''')');
ADOQuery1.Open ;
end;
procedure TForm4.Button19Click(Sender: TObject);
begin
panel5.Hide ;
end;
procedure TForm4.Button18Click(Sender: TObject);//退课
var
str:string;
begin
if Application.MessageBox(' 确定退课吗?','提示框',Mb_OKCANCEL) = IDOK then
begin
ADOQuery1.Edit ;
str:=ADOQuery1.FieldByName('课程号').AsString ;
ADOQuery1.Close ;
ADOQuery1.SQL.Clear ;
ADOQuery1.SQL.Add('DELETE FROM select_info WHERE stu_no='''+user_no+''' and c_id='''+str+'''');
ADOQuery1.ExecSQL ;
DBGrid3.Refresh ;
ADOQuery1.Close ;
ADOQuery1.SQL.Clear ;
ADOQuery1.SQL.Add('SELECT c_name AS 课程名称,X.c_id AS 课程号,c_time AS 学分,');
ADOQuery1.SQL.Add('credit_hour AS 学时,t_name AS 老师,arrange AS 时间和地点');
ADOQuery1.SQL.Add('FROM course AS X,teach_info AS Y');
ADOQuery1.SQL.Add('WHERE X.c_id=Y.c_id and X.c_id in(SELECT c_id ');
ADOQuery1.SQL.Add('FROM select_info WHERE stu_no='''+user_no+''' and start_time='''+Edit8.Text+''')');
ADOQuery1.Open ;
end
end;
procedure TForm4.DBGrid3DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if ((State = [gdSelected]) or (State=[gdSelected,gdFocused])) then
DbGrid3.Canvas.Brush.color:=clRed;//当前行以红色显示,其它行使用背景的浅绿色
DbGrid3.Canvas.pen.mode:=pmmask;
DbGrid3.DefaultDrawColumnCell (Rect,DataCol,Column,State);
end;
procedure TForm4.Button15Click(Sender: TObject); //打印预览
var
arrange,cname,week,lesson:string;
index:integer;
begin
M11.Lines.Clear;
M12.Lines.Clear;
M13.Lines.Clear;
M14.Lines.Clear;
M15.Lines.Clear;
M16.Lines.Clear;
M17.Lines.Clear;
M21.Lines.Clear;
M22.Lines.Clear;
M23.Lines.Clear;
M24.Lines.Clear;
M25.Lines.Clear;
M26.Lines.Clear;
M27.Lines.Clear;
M31.Lines.Clear;
M32.Lines.Clear;
M33.Lines.Clear;
M34.Lines.Clear;
M35.Lines.Clear;
M36.Lines.Clear;
M37.Lines.Clear;
M41.Lines.Clear;
M42.Lines.Clear;
M43.Lines.Clear;
M44.Lines.Clear;
M45.Lines.Clear;
M46.Lines.Clear;
M47.Lines.Clear;
M61.Lines.Clear;
M62.Lines.Clear;
M63.Lines.Clear;
M64.Lines.Clear;
M65.Lines.Clear;
M66.Lines.Clear;
M67.Lines.Clear;
ADOQuery2.Close ;
ADOQuery2.SQL.Clear ;
ADOQuery2.SQL.Add('SELECT c_name,arrange FROM course WHERE c_id');
ADOQuery2.SQL.Add('in (SELECT c_id FROM select_info WHERE');
ADOQuery2.SQL.Add('stu_no='''+user_no+'''and start_time='''+Edit6.Text+''')');
ADOQuery2.Open ;
ADOQuery2.First;
QRLabel1.Caption :=''+Edit6.Text+''+'学期的课表';
while not ADOQuery2.Eof do
begin
cname:=ADOQuery2.FieldByName('c_name').AsString;
arrange:=ADOQuery2.FieldByName('arrange').AsString;
while((strlen(pchar(arrange)) div 13) > 0) do
begin
week:=copy(arrange,1,3);
lesson:=copy(arrange,5,1);
index:=pos(';',arrange);
if index > 0 then
begin
if week = '周0' then
begin
case strtoint(lesson) of
1:
begin
m17.Lines.Add(cname);
m17.Lines.Add(copy(arrange,6,5));
if index > 0 then
begin
m17.Lines.Add(copy(arrange,11,(index-11)));
arrange:=copy(arrange,(index+1),strlen(pchar(arrange)));
end
else
begin
m17.Lines.Add(copy(arrange,11,6));
break;
end;
end;
2:
begin
m27.Lines.Add(cname);
m27.Lines.Add(copy(arrange,6,5));
if index > 0 then
begin
m27.Lines.Add(copy(arrange,11,(index-11)));
arrange:=copy(arrange,(index+1),strlen(pchar(arrange)));
end
else
begin
m27.Lines.Add(copy(arrange,11,6));
break;
end;
end;
3:
begin
m37.Lines.Add(cname);
m37.Lines.Add(copy(arrange,6,5));
if index > 0 then
begin
m37.Lines.Add(copy(arrange,11,(index-11)));
arrange:=copy(arrange,(index+1),strlen(pchar(arrange)));
end
else
begin
m37.Lines.Add(copy(arrange,11,6));
break;
end;
end;
4:
begin
m47.Lines.Add(cname);
m47.Lines.Add(copy(arrange,6,5));
if index > 0 then
begin
m47.Lines.Add(copy(arrange,11,(index-11)));
arrange:=copy(arrange,(index+1),strlen(pchar(arrange)));
end
else
begin
m47.Lines.Add(copy(arrange,11,6));
break;
end;
end;
6:
begin
m67.Lines.Add(cname);
m67.Lines.Add(copy(arrange,6,5));
if index > 0 then
begin
m67.Lines.Add(copy(arrange,11,(index-11)));
arrange:=copy(arrange,(index+1),strlen(pchar(arrange)));
end
else
begin
m67.Lines.Add(copy(arrange,11,6));
break;
end;
end;
end;
end
else if week = '周1' then
begin
case strtoint(lesson) of
1:
begin
m11.Lines.Add(cname);
m11.Lines.Add(copy(arrange,6,5));
if index > 0 then
begin
m11.Lines.Add(copy(arrange,11,(index-11)));
arrange:=copy(arrange,(index+1),strlen(pchar(arrange)));
end
else
begin
m11.Lines.Add(copy(arrange,11,6));
break;
end;
end;
2:
begin
m21.Lines.Add(cname);
m21.Lines.Add(copy(arrange,6,5));
m21.Lines.Add(copy(arrange,11,(index-11)));
end;
3:
begin
m31.Lines.Add(cname);
m31.Lines.Add(copy(arrange,6,5));
m31.Lines.Add(copy(arrange,11,(index-11)));
end;
4:
begin
m41.Lines.Add(cname);
m41.Lines.Add(copy(arrange,6,5));
m41.Lines.Add(copy(arrange,11,(index-11)));
end;
6:
begin
m61.Lines.Add(cname);
m61.Lines.Add(copy(arrange,6,5));
m61.Lines.Add(copy(arrange,11,(index-11)));
end;
end;
end
else if week = '周2' then
begin
case strtoint(lesson) of
1:
begin
m12.Lines.Add(cname);
m12.Lines.Add(copy(arrange,6,5));
m12.Lines.Add(copy(arrange,11,(index-11)));
end;
2:
begin
m22.Lines.Add(cname);
m22.Lines.Add(copy(arrange,6,5));
m22.Lines.Add(copy(arrange,11,(index-11)));
end;
3:
begin
m32.Lines.Add(cname);
m32.Lines.Add(copy(arrange,6,5));
m32.Lines.Add(copy(arrange,11,(index-11)));
end;
4:
begin
m42.Lines.Add(cname);
m42.Lines.Add(copy(arrange,6,5));
m42.Lines.Add(copy(arrange,11,(index-11)));
end;
6:
begin
m62.Lines.Add(cname);
m62.Lines.Add(copy(arrange,6,5));
m62.Lines.Add(copy(arrange,11,(index-11)));
end;
end;
end
else if week = '周3' then
begin
case strtoint(lesson) of
1:
begin
m13.Lines.Add(cname);
m13.Lines.Add(copy(arrange,6,5));
m13.Lines.Add(copy(arrange,11,(index-11)));
end;
2:
begin
m23.Lines.Add(cname);
m23.Lines.Add(copy(arrange,6,5));
m23.Lines.Add(copy(arrange,11,(index-11)));
end;
3:
begin
m33.Lines.Add(cname);
m33.Lines.Add(copy(arrange,6,5));
m33.Lines.Add(copy(arrange,11,(index-11)));
end;
4:
begin
m43.Lines.Add(cname);
m43.Lines.Add(copy(arrange,6,5));
m43.Lines.Add(copy(arrange,11,(index-11)));
end;
6:
begin
m63.Lines.Add(cname);
m63.Lines.Add(copy(arrange,6,5));
m63.Lines.Add(copy(arrange,11,(index-11)));
end;
end;
end
else if week = '周4' then
begin
case strtoint(lesson) of
1:
begin
m14.Lines.Add(cname);
m14.Lines.Add(copy(arrange,6,5));
m14.Lines.Add(copy(arrange,11,(index-11)));
end;
2:
begin
m24.Lines.Add(cname);
m24.Lines.Add(copy(arrange,6,5));
m24.Lines.Add(copy(arrange,11,(index-11)));
end;
3:
begin
m34.Lines.Add(cname);
m34.Lines.Add(copy(arrange,6,5));
m34.Lines.Add(copy(arrange,11,(index-11)));
end;
4:
begin
m44.Lines.Add(cname);
m44.Lines.Add(copy(arrange,6,5));
m44.Lines.Add(copy(arrange,11,(index-11)));
end;
6:
begin
m64.Lines.Add(cname);
m64.Lines.Add(copy(arrange,6,5));
m64.Lines.Add(copy(arrange,11,(index-11)));
end;
end;
end
else if week = '周5' then
begin
case strtoint(lesson) of
1:
begin
m15.Lines.Add(cname);
m15.Lines.Add(copy(arrange,6,5));
m15.Lines.Add(copy(arrange,11,(index-11)));
end;
2:
begin
m25.Lines.Add(cname);
m25.Lines.Add(copy(arrange,6,5));
m25.Lines.Add(copy(arrange,11,(index-11)));
end;
3:
begin
m35.Lines.Add(cname);
m35.Lines.Add(copy(arrange,6,5));
m35.Lines.Add(copy(arrange,11,(index-11)));
end;
4:
begin
m45.Lines.Add(cname);
m45.Lines.Add(copy(arrange,6,5));
m45.Lines.Add(copy(arrange,11,(index-11)));
end;
6:
begin
m65.Lines.Add(cname);
m65.Lines.Add(copy(arrange,6,5));
m65.Lines.Add(copy(arrange,11,(index-11)));
end;
end;
end
else if week ='周6' then
begin
case strtoint(lesson) of
1:
begin
m16.Lines.Add(cname);
m16.Lines.Add(copy(arrange,6,5));
m16.Lines.Add(copy(arrange,11,(index-11)));
end;
2:
begin
m26.Lines.Add(cname);
m26.Lines.Add(copy(arrange,6,5));
m26.Lines.Add(copy(arrange,11,(index-11)));
end;
3:
begin
m36.Lines.Add(cname);
m36.Lines.Add(copy(arrange,6,5));
m36.Lines.Add(copy(arrange,11,(index-11)));
end;
4:
begin
m46.Lines.Add(cname);
m46.Lines.Add(copy(arrange,6,5));
m46.Lines.Add(copy(arrange,11,(index-11)));
end;
6:
begin
m66.Lines.Add(cname);
m66.Lines.Add(copy(arrange,6,5));
m66.Lines.Add(copy(arrange,11,(index-11)));
end;
end;
end
else
begin
end;
arrange:=copy(arrange,(index+1),strlen(pchar(arrange)));
end
else
begin
if week = '周0' then
begin
case strtoint(lesson) of
1:
begin
m17.Lines.Add(cname);
m17.Lines.Add(copy(arrange,6,5));
m17.Lines.Add(copy(arrange,11,6));
end;
2:
begin
m27.Lines.Add(cname);
m27.Lines.Add(copy(arrange,6,5));
m27.Lines.Add(copy(arrange,11,6));
end;
3:
begin
m37.Lines.Add(cname);
m37.Lines.Add(copy(arrange,6,5));
m37.Lines.Add(copy(arrange,11,6));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -