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

📄 xueshengdanganguanli.txt

📁 本软件的主要目标是实现学校学生信息管理的自动化
💻 TXT
📖 第 1 页 / 共 2 页
字号:
4 学生成绩档案管理系统的功能实现

本软件的主要目标是实现学校学生信息管理的自动化,主要功能是对有关学生信息的存储与查询管理。
4.1登录系统模块编码设计
系统启动后,将首先出现用户登录窗体如下,用户首先输入用户名,然后输入密码。
procedure Tlogin_form.BitBtn1Click(Sender: TObject);
var
  pass:variant;
begin
  pass:=ADOTable1.Lookup('user',edit1.Text,'password');
  if pass = edit2.text then
    begin
      main_form.Show;
      strloginname:=edit1.Text;
      main_form.StatusBar1.Panels[1].Text:=edit1.Text;
      main_form.WindowState:=wsMaximized;
      self.close;
    end
  else
    begin
      showmessage('用户名或密码错误,请重新输入');
      edit1.text:='';
      edit2.text:='';
      edit1.setfocus;
    end;
end;
procedure Tlogin_form.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
  if key=#13 then
  BitBtn1.Click;
end;
procedure Tlogin_form.FormShow(Sender: TObject);
begin
   ADOTable1.TableName:='login';
   ADOTable1.Open;
   self.edit1.SetFocus;
end;

4.2用户管理编码设计
选择系统菜单里的用户管理功能,出现用户综合管理窗口,在该窗口中当前登录用户可以创建一个或多个有固定权限的用户、删除用户、当前用户密码修改。
procedure TForm6.FormCreate(Sender: TObject);
var
 newitem:Tlistitem;
 strname,strp:string;
begin
    adotable1.Open;
    adotable1.Edit;
    adotable1.First;
   while not adotable1.Eof do
   begin
   newitem:=listview1.Items.Add();
   strname:=adotable1.fields.fields[0].asstring;
   strp:=adotable1.Fields.Fields[2].AsString ;
   newitem.Caption:=strname;
   newitem.SubItems.Add(strp);
   adotable1.next;
   end;
   adotable1.Close;
   adotable1.Free;
end;

procedure Tform6.listviewSelectItem(Sender: TObject; Item: TListItem;
  Selected: Boolean);
begin
  BitBtn1.Enabled := selected;
  seluser:=Item.Caption ;
end;

procedure TForm6.BitBtn1Click(Sender: TObject);
var
   strname:string;
begin
    listview1.DeleteSelected;
    adotable1.Edit;
    adotable1.First;
    while not adotable1.Eof do
     begin
       strname:=adotable1.Fields.Fields[0].AsString;
       if (seluser=strname) then
         adotable1.Delete;
     end;
     adotable1.Next;
     adotable1.Post;
end;

procedure TForm6.BitBtn2Click(Sender: TObject);
begin
close;
end;

end. 

4.3修改密码编码设计  
用户可以直接修改当前用户的密码,非常的方便.
procedure TForm7.BitBtn1Click(Sender: TObject);
begin
   if (edit4.Text =adotable1.Fields.Fields[0].AsString)and (edit1.Text =adotable1.Fields.Fields[1].AsString) then
     begin
       adotable1.Edit;
       adotable1.Fields.Fields[1].AsString :=edit2.Text;
       adotable1.Post;
       showmessage('恭喜你,修改成功!');
     end
     else
      showmessage('原用户名及密码错误,请重新输入!') ;
end;

procedure TForm7.BitBtn2Click(Sender: TObject);
begin
close;
end;
4.4学生档案信息管理编码设计
选择学生信息管理菜单项里的基本信息功能,出现基本信息窗口(如图),用户可以添加新的学生信息,但注意:学号不能和已有学号相同。
//以下为添加模块代码
procedure TForm8.BitBtn1Click(Sender: TObject);
begin
   adotable1.Open;
   adotable1.Edit;
   adotable1.FieldByName('学号').AsString:=trim(edit1.Text);
   adotable1.FieldByName('姓名').AsString:=trim(edit2.Text);
   adotable1.FieldByName('性别').AsString:=trim(combobox1.Text);
   adotable1.FieldByName('出生日期').AsString:=trim(edit12.Text);
   adotable1.FieldByName('民族').AsString:=trim(combobox4.Text);
   adotable1.FieldByName('政治面貌').AsString:=trim(combobox3.Text);
   adotable1.FieldByName('籍贯').AsString:=trim(edit5.Text);
   adotable1.FieldByName('入学时间').AsString:=trim(edit6.Text);
   adotable1.FieldByName('入学成绩').AsInteger :=strtoint(trim(edit7.Text));
   adotable1.FieldByName('宿舍号').AsString:=trim(edit8.Text);
   adotable1.FieldByName('宿舍电话').AsString:=trim(edit9.Text);
   adotable1.FieldByName('家庭地址').AsString:=trim(edit10.Text);
   adotable1.FieldByName('家庭电话').AsString:=trim(edit11.Text);
   adotable1.FieldByName('备注').AsString:=trim(memo1.Text);
   adotable1.FieldByName('班级').AsString:=trim(edit3.Text);
   adotable1.FieldByName('年级').AsString:=trim(combobox2.Text);
   adotable1.FieldByName('班主任').AsString:=trim(edit4.Text);
   adotable1.Post;
   showmessage('你已经成功添加该信息!');
   adotable1.Close;
end;

procedure TFrame3.Button1Click(Sender: TObject);//此为查找学生信息模块
begin
  adoquery1.Close;
  adoquery1.SQL.Clear;
  if (combobox1.Text<>'')and(combobox2.Text<>'')and(edit1.Text<>'') then
    begin
      adoquery1.SQL.Add('select * from studentlist');
      adoquery1.SQL.Add('where');
      adoquery1.SQL.Add(combobox1.Text);
      adoquery1.SQL.Add(combobox2.Text);
      adoquery1.SQL.Add(''''+edit1.Text+'''');
      adoquery1.Open;
    end;
end;
// 此为删除确认模块代码
procedure TForm8.BtnDelClick(Sender: TObject);
begin
if messagebox(Application.Handle,'如果您点确定键此条记录将被删除','警告',
mb_ICONWarning+mb_yesno+mb_defbutton2)= mryes then
      qutil2.Delete;
 end;
//此为条件查找模块代码
procedure TForm8.SpeedButton1Click(Sender: TObject);
var
bid1,bid2,cid1,cid2,native,politic,nam:string;
 Str:string;
begin
 bid1    := trim(edit2.Text);
 bid2    := trim(edit3.Text);
 cid1    := trim(combobox4.Items[combobox4.itemindex]);
 cid2    := trim(combobox5.Items[combobox5.itemindex]);
 native  := trim(edit6.Text);
 politic := trim(combobo1.Text);
 nam     := edit5.text;
 str := '';
  if bid1 <>'' then
  str := str+ 'AND bID>='''+bid1+'''';
  if bid2 <> '' then
  str := str+ 'AND bID<='''+bid2+'''';
   if cid1 <> '' then
  str := str+ 'AND cID>='''+cid1+'''';
  if cid2 <> '' then
  str := str+ 'AND cID<='''+cid2+'''';
  if nam <> '' then
  str := str + 'AND bName='''+nam+'''';
  if native <> '' then
  str := str+'AND bNation='''+native+'''';
  if politic <> '' then
  str := str+'AND bPolitic='''+politic+'''';
    delete(str,1,4);
    qutil2.SQL.Clear;
    qutil2.SQL.Add('SELECT * FROM Arcinfo  ');
    if str <> '' then
    qutil2.SQL.Add('where ' + str);
    qutil2.SQL.add('order by bID');
    qutil2.close;
    qutil2.Open;
end;
//此为图片添加代码
procedure TForm8.SpeedButton12Click(Sender: TObject);
var
f : file of Byte;
size:int64;
begin
   if OpenDialog1.Execute then
begin
 AssignFile(f,OpenDialog1.FileName);
 Reset(f);
 Size:= FileSize(f);
 CloseFile(f);
 if Size >1024000 then
 begin
  showmessage('载入相片不能大于10K,请检查相片是否正确');
  exit;
 end;
 dbbPhoto.Picture.LoadFromFile(OpenDialog1.FileName);
 end;
end;
procedure TForm8.BtnPrintClick(Sender: TObject);
begin
FrmRep.Rep1.Print;
end;
procedure TForm8.BtnCloseClick(Sender: TObject);
begin
close;
end;
//此为档案信息浏览代码
 procedure TForm5.ListView1Click(Sender: TObject);
var
 newitem:Tlistitem;
 str1,str2,str3,str4,str5,str6,str7,str8,str9,str10,str11,str12:string;
begin
   n:=n+1;
   if n<2 then
   begin
   frames.Parent := TWinControl(self);
    frames.Name := 'frame3';
    frames.Show;
    frames.Align := alClient;
    frames.Visible :=true;
    frames.ListView1.Align :=alClient;
    frames.ListView1.Visible:=true;
    frames.GroupBox1.Visible :=false;
    frames.Button1.Visible :=false;
    frames.Button2.Visible :=false;
    frames.Button3.Visible :=false;
    adotable1.Edit;
    adotable1.First;
   while not adotable1.Eof do
   begin
   newitem:=frames.ListView1.Items.Add();
   str1:=adotable1.fields.fields[0].asstring;
   str2:=adotable1.Fields.Fields[1].AsString;
   str3:=adotable1.Fields.Fields[2].AsString;
   str4:=adotable1.Fields.Fields[3].AsString;
   str5:=adotable1.Fields.Fields[4].AsString;
   str6:=adotable1.Fields.Fields[5].AsString;
   str7:=adotable1.Fields.Fields[10].AsString;
   str8:=adotable1.Fields.Fields[11].AsString;
   str9:=adotable1.Fields.Fields[7].AsString;
   str10:=adotable1.Fields.Fields[9].AsString;
   str11:=adotable1.Fields.Fields[13].AsString;
   str12:=adotable1.Fields.Fields[14].AsString;
   newitem.Caption:=str1;
   newitem.SubItems.Add(str2);
   newitem.SubItems.Add(str3);
   newitem.SubItems.Add(str4);
   newitem.SubItems.Add(str5);
   newitem.SubItems.Add(str6);
   newitem.SubItems.Add(str7);
   newitem.SubItems.Add(str8);
   newitem.SubItems.Add(str9);
   newitem.SubItems.Add(str10);
   newitem.SubItems.Add(str11);
   newitem.SubItems.Add(str12);
   adotable1.next;
   end;
   //adotable1.Close;
   //adotable1.Free;
   end
  else
    begin
       frames.ListView1.Align :=alClient;
       frames.ListView1.Visible:=true;
       frames.GroupBox1.Visible :=false;
       frames.Button1.Visible :=false;
       frames.Button2.Visible :=false;
       frames.Button3.Visible :=false;
    end;
end;
4.5班级设置编码设计
选择班级管理菜单项里的班级设置信息功能,出现班级信息窗口户可以添加新的班级,但应注意:新添班级编号不能和已有班级编号相同。
//此为班级添加代码
procedure Taddclass.BitBtn1Click(Sender: TObject);
begin
   unit9.classlist.ADOTable1.Open;
   unit9.classlist.ADOTable1.Edit;
   unit9.classlist.ADOTable1.Append;
  unit9.classlist.ADOTable1.Fields.Fields[0].AsString:=trim(edit2.Text);
  unit9.classlist.ADOTable1.Fields.Fields[1].AsString:=trim(edit1.Text);
  unit9.classlist.ADOTable1.Fields.Fields[2].AsString:=trim(combobox1.Text);
  unit9.classlist.ADOTable1.Fields.Fields[3].AsString:=trim(edit3.Text);
  unit9.classlist.ADOTable1.Post;
  self.close;
end;
//此为班级删除代码
procedure Tclasslist.BitBtn2Click(Sender: TObject);
begin
adotable1.Edit;

⌨️ 快捷键说明

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