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

📄 frm_experienceu.pas

📁 包括学生的教育经历
💻 PAS
字号:
unit frm_experienceU;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, frm_infoU, DB, StdCtrls, Grids, DBGrids, ComCtrls,Control_experienceU,
  ClassesU,Control_studentU;

type
  Tfrm_experience = class(Tfrm_info)
    Label18: TLabel;
    edt_stdNo_s: TEdit;
    btn_search_stdNo: TButton;
    Label1: TLabel;
    edt_stdNo: TEdit;
    Label2: TLabel;
    Label3: TLabel;
    DTP_endDate: TDateTimePicker;
    Label4: TLabel;
    DTP_beginDate: TDateTimePicker;
    edt_school: TEdit;
    edt_duty: TEdit;
    Label5: TLabel;
    procedure btn_addClick(Sender: TObject);
    procedure btn_delClick(Sender: TObject);
    procedure btn_editClick(Sender: TObject);
    procedure DBGrid_infoCellClick(Column: TColumn);
    procedure btn_search_stdNoClick(Sender: TObject);
  private
    { Private declarations }
  public
    procedure FillData;override;
  end;

var
  frm_experience: Tfrm_experience;

implementation

{$R *.dfm}
procedure Tfrm_experience.FillData;
begin
  self.DataSource_info.DataSet:=Control_experienceU.GetExperienceArray;
  self.DBGrid_info.Columns[0].Visible  :=false;
end;

procedure Tfrm_experience.btn_addClick(Sender: TObject);
var
  Experience:TExperience;
  Student:TStudent;
begin
  inherited;
 if((edt_stdNo.Text='') or (edt_school.Text='')
    or (DTP_beginDate.Date>DTP_endDate.Date)) then
        begin
           MessageBox(Handle, '内容填写不正确!', '信息', MB_ICONEXCLAMATION);
           exit;
        end;
 Student:=TStudent.Create;
 Student:=Control_StudentU.GetStudentByStudentNo(self.edt_stdNo.Text);
     if Student=nil then
       begin
         MessageBox(Handle, '学号填写不正确!', '信息', MB_ICONEXCLAMATION);
         edt_stdNo.SetFocus;
         exit;
       end;

      Experience:=TExperience.Create;
      Experience.id:=edt_stdNo.Tag;
      Experience.stdNo:=trim(self.edt_stdNo.Text);
      Experience.beginDate:=DateToStr(self.DTP_beginDate.Date);
      Experience.endDate:=DateToStr(self.DTP_endDate.Date);
      Experience.school:=self.edt_school.Text;
      Experience.duty:=self.edt_duty.Text;

      if(Control_ExperienceU.AddExperience(Experience)) then
        begin
          MessageBox(Handle, '添加成功!', '信息', MB_ICONASTERISK);
          //刷新内容
          FillData;
          if self.DBGrid_info.Fields[0].IsNull then
            begin
              self.edt_stdNo.Tag:=0;//保存id
              self.edt_stdNo.Text:='';
              self.DTP_beginDate.Date :=now;
              self.DTP_endDate.Date:=now;
              self.edt_school.Text:='';
              self.edt_duty.Text:='';
            end
          else
            begin
              self.edt_stdNo.Tag:=self.DBGrid_info.Fields[0].Value;//保存id
              self.edt_stdNo.Text:=self.DBGrid_info.Fields[1].Value;
              self.DTP_beginDate.Date :=self.DBGrid_info.Fields[2].Value;
              self.DTP_endDate.Date:=self.DBGrid_info.Fields[3].Value;
              self.edt_school.Text:=self.DBGrid_info.Fields[4].Value;
              self.edt_duty.Text:=self.DBGrid_info.Fields[5].Value;
            end;
        end
      else
        begin
          MessageBox(Handle, '添加失败!', '信息', MB_ICONEXCLAMATION);
          exit;
        end;
end;

procedure Tfrm_experience.btn_delClick(Sender: TObject);
begin
  inherited;
if MessageBox(Handle, '您确定要删除该信息', '信息',
     MB_ICONQUESTION or MB_OKCANCEL) = IDOK then
    begin
      Control_ExperienceU.DelExperience(self.edt_stdNo.Tag);
      FillData;
      if self.DBGrid_info.Fields[0].IsNull then
        begin
          self.edt_stdNo.Tag:=0;//
          self.edt_stdNo.Text:='';
          self.DTP_beginDate.Date :=now;
          self.DTP_endDate.Date:=now;
          self.edt_school.Text:='';
          self.edt_duty.Text:='';
        end
      else
        begin
          self.edt_stdNo.Tag:=self.DBGrid_info.Fields[0].Value;//保存id
          self.edt_stdNo.Text:=self.DBGrid_info.Fields[1].Value;
          self.DTP_beginDate.Date :=self.DBGrid_info.Fields[2].Value;
          self.DTP_endDate.Date:=self.DBGrid_info.Fields[3].Value;
          self.edt_school.Text:=self.DBGrid_info.Fields[4].Value;
          self.edt_duty.Text:=self.DBGrid_info.Fields[5].Value;
        end;
    end;
end;

procedure Tfrm_experience.btn_editClick(Sender: TObject);
var
  Experience:TExperience;
  Student:TStudent;
begin
  inherited;
 if edt_stdNo.Text ='' then
    begin
      MessageBox(Handle, '没有可以修改的数据!', '信息', MB_ICONEXCLAMATION);
      exit;
    end
  else
    begin
      if((edt_stdNo.Text='') or (edt_school.Text='')
         or (DTP_beginDate.Date>DTP_endDate.Date)) then
      begin
         MessageBox(Handle, '内容填写不正确!', '信息', MB_ICONEXCLAMATION);
         exit;
      end;
     Student:=TStudent.Create;
     Student:=Control_StudentU.GetStudentByStudentNo(self.edt_stdNo.Text);
     if Student=nil then
       begin
         MessageBox(Handle, '学号填写不正确!', '信息', MB_ICONEXCLAMATION);
         edt_stdNo.SetFocus;
         exit;
       end;

      Experience:=TExperience.Create;
      Experience.id:=edt_stdNo.Tag;
      Experience.stdNo:=trim(self.edt_stdNo.Text);
      Experience.beginDate:=DateToStr(self.DTP_beginDate.Date);
      Experience.endDate:=DateToStr(self.DTP_endDate.Date);
      Experience.school:=self.edt_school.Text;
      Experience.duty:=self.edt_duty.Text;

      if(Control_ExperienceU.EditExperience(Experience)) then
        begin
          MessageBox(Handle, '修改成功!', '信息', MB_ICONASTERISK);
          //刷新内容
          FillData;
        end
      else
         begin
          MessageBox(Handle, '修改失败!', '信息', MB_ICONEXCLAMATION);
          exit;
         end;
          self.edt_stdNo.SetFocus;
  end;
end;

procedure Tfrm_experience.DBGrid_infoCellClick(Column: TColumn);
begin
  inherited;
    if self.DBGrid_info.Fields[0].IsNull then
        begin
          self.edt_stdNo.Tag:=0;//
          self.edt_stdNo.Text:='';
          self.DTP_beginDate.Date :=now;
          self.DTP_endDate.Date:=now;
          self.edt_school.Text:='';
          self.edt_duty.Text:='';
        end
      else
        begin
          self.edt_stdNo.Tag:=self.DBGrid_info.Fields[0].Value;//保存id
          self.edt_stdNo.Text:=self.DBGrid_info.Fields[1].Value;
          self.DTP_beginDate.Date :=self.DBGrid_info.Fields[2].Value;
          self.DTP_endDate.Date:=self.DBGrid_info.Fields[3].Value;
          self.edt_school.Text:=self.DBGrid_info.Fields[4].Value;
          self.edt_duty.Text:=self.DBGrid_info.Fields[5].Value;
        end;
end;

procedure Tfrm_experience.btn_search_stdNoClick(Sender: TObject);
begin
  inherited;
  self.DataSource_info.DataSet:=
       Control_experienceU.GetExperienceByStdNO(self.edt_stdNo_s.Text);
  self.DBGrid_info.Columns[0].Visible  :=false;
end;

end.

⌨️ 快捷键说明

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