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

📄 updatestudentsunit.~pas

📁 一套DLEPHI制作的教学管理系统
💻 ~PAS
字号:
unit UpdateStudentsUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, ComCtrls, Spin;

type
  TUpdateStudentsForm = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    SpinEdit1: TSpinEdit;
    DateTimePicker1: TDateTimePicker;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure SpinEdit1Change(Sender: TObject);
    procedure SpinEdit1Exit(Sender:TObject);
    procedure SpinEdit1KeyPress(Sender:TObject;var Key:Char);
    procedure BitBtn4Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  UpdateStudentsForm: TUpdateStudentsForm;

implementation

uses UpDateDataModuleUnit;

{$R *.dfm}

procedure TUpdateStudentsForm.BitBtn1Click(Sender: TObject);
begin
   
 With  UpDateDataModule.StudentsTable  do
 begin
   IndexFieldNames:='SNo';
   if  SpinEdit1.Text='' then
   begin
    ShowMessage('请输入学号:');
    SpinEdit1.SetFocus;
    exit;
   end;
   if  not  FindKey([SpinEdit1.Text])  then
   begin
     ShowMessage('无此记录,不能修改!');
     exit;
   end;
   Edit;
   FieldByName('Name').AsString:=Edit1.Text;
   FieldByName('SNo').AsString:=SpinEdit1.Text;
   FieldByName('Sex').AsString:=Edit2.Text;
   FieldByName('Age').AsString:=Edit3.Text;
   FieldByName('Entrance').AsDateTime:=DateTimePicker1.Date;
   Post;
   ShowMessage('修改成功!');
 end;
end;

procedure TUpdateStudentsForm.BitBtn2Click(Sender: TObject);
begin
   

With  UpDateDataModule.StudentsTable  do
 begin
 IndexFieldNames:='SNo';
 if((SpinEdit1.Text<>'')and (Edit1.Text<>'')) then
 begin
   if FindKey([SpinEdit1.Text])
   then  begin
      ShowMessage('此学生已经存在!');
      exit;
    end;
   try
     Append;
     FieldByName('Name').AsString:=Edit1.Text;
     FieldByName('SNo').AsString:=SpinEdit1.Text;
     FieldByName('Sex').AsString:=Edit2.Text;
     FieldByName('Age').AsString:=Edit3.Text;
     FieldByName('Entrance').AsDateTime:=DateTimePicker1.Date;
     Post;
     ShowMessage('添加成功!');
   except
   begin
     Active:=false;
     ShowMessage('输入编号的范围应在:10000000-19999999之间!');
     Active:=true;
     exit;
   end;
 end;
 end  else  ShowMessage('姓名和编号不能为空!');
end;
end;

procedure TUpdateStudentsForm.BitBtn3Click(Sender: TObject);
begin
 

 With  UpDateDataModule.StudentsTable  do
 begin
   IndexFieldNames:='SNo';
   if  FindKey([SpinEdit1.Text])
   then begin
     Delete;
     Edit1.Text:='';
     Edit2.Text:='';
     Edit3.Text:='';
     ShowMessage('删除成功!');
     end  else  ShowMessage('无此记录!');
 end;
end;

procedure TUpdateStudentsForm.SpinEdit1Change(Sender: TObject);
begin

 UpdateStudentsForm.SpinEdit1Exit(Sender);
end;
procedure  TUpdateStudentsForm.SpinEdit1Exit(Sender:TObject);
begin
  if(length(SpinEdit1.Text)<>8) then
  begin
    ShowMessage('请输入8个字符!');
    SpinEdit1.SetFocus;
    exit;
  end;
  With UpDateDataModule.StudentsTable  do
  begin
  IndexFieldNames:='SNo';
  if  FindKey([SpinEdit1.Text])  then
  begin
    Edit1.Text:=FieldByName('Name').AsString ;
    Spinedit1.Text:=FieldByName('SNo').AsString ;
    Edit2.Text:=FieldByName('Sex').AsString ;
    Edit3.Text:=FieldByName('Age').AsString ;
    DateTimePicker1.Date:=FieldByName('Entrance').AsDateTime ;
  end else
  begin
    Edit1.Text:='';
    Edit2.Text:='';
    Edit3.Text:='';
  end;
 end;
end;
procedure  TUpdateStudentsForm.SpinEdit1KeyPress(Sender:TObject;
var Key:Char);
begin
  if  Key=#13  then
     UpdateStudentsForm.SpinEdit1Exit(Sender);
end;

procedure TUpdateStudentsForm.BitBtn4Click(Sender: TObject);
begin
 close;
end;

end.

⌨️ 快捷键说明

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