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

📄 frm_classu.pas

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

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, frm_infoU, DB, StdCtrls, Grids, DBGrids,ClassesU,Control_classU,
  ADODB;

type
  Tfrm_class = class(Tfrm_info)
    edt_name: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    cbx_class: TComboBox;
    procedure btn_addClick(Sender: TObject);
    procedure cbx_classChange(Sender: TObject);
    procedure btn_delClick(Sender: TObject);
    procedure btn_editClick(Sender: TObject);
    procedure DBGrid_infoCellClick(Column: TColumn);
  private
    { Private declarations }
  public
    procedure FillData;override;
    procedure FillCbx;//填充combobox
  end;

var
  frm_class: Tfrm_class;

implementation

{$R *.dfm}
procedure Tfrm_class.FillData;
begin
  DataSource_info.DataSet:=Control_classU.GetclassesArray;
  self.DBGrid_info.Columns[0].Visible  :=false;
  self.DBGrid_info.Columns[2].Visible  :=false;
  self.FillCbx;
end;
procedure Tfrm_class.FillCbx;
var
  query:TADOQuery;
begin
  query:=TADOQuery.Create(nil);
  query:=Control_classU.GetclassesArray;
  self.cbx_class.Items.Clear;
  cbx_class.Items.Add('本校');
  cbx_class.Tag:=0;
  while not query.Eof do
    begin
      self.cbx_class.Items.Add(query.Fields[1].Value );
      query.Next;
    end;
  cbx_class.ItemIndex:=0;
  query:=nil;
end;
procedure Tfrm_class.btn_addClick(Sender: TObject);
var
  Classes:TClasses;
  fatherID:integer;
begin
  inherited;
     if((edt_Name.Text='')) then
        begin
           MessageBox(Handle, '内容填写不正确!', '信息', MB_ICONEXCLAMATION);
           exit;
        end;
       //查找是否存在重复
      if (GetclassesByName(trim(edt_name.Text)))<>nil then
        begin
          MessageBox(Handle, '该院系已经存在,请重新设置!', '信息', MB_ICONEXCLAMATION);
          exit;
        end;
      classes:=Tclasses.Create;
      classes.id:=edt_name.Tag;
      classes.className:=edt_name.Text;
      classes.fatherID:=self.cbx_class.Tag;

      if(Control_classU.Addclasses(classes)) then
        begin
          MessageBox(Handle, '添加成功!', '信息', MB_ICONASTERISK);
          self.edt_name.Tag:=0;
          self.edt_name.Text:='';
          self.cbx_class.ItemIndex:=0;

          //刷新内容
          FillData;
        end
      else
        begin
          MessageBox(Handle, '添加失败!', '信息', MB_ICONEXCLAMATION);
          exit;
        end;
end;

procedure Tfrm_class.cbx_classChange(Sender: TObject);
var
  Classes:TClasses;
begin
  inherited;
  Classes:=TClasses.Create;
  Classes:=GetclassesByName(self.cbx_class.Text);
  if Classes<>nil then
    self.cbx_class.Tag:=Classes.id;
end;

procedure Tfrm_class.btn_delClick(Sender: TObject);
var
  Classes:TClasses;
begin
  inherited;
  if MessageBox(Handle, '您确定要删除该院系班级信息', '信息',
     MB_ICONQUESTION or MB_OKCANCEL) = IDOK then
    begin
      Control_ClassU.DelClasses(self.edt_name.Tag);
      FillData;
      if self.DBGrid_info.Fields[0].IsNull then
        exit;
      self.edt_name.Tag:=self.DBGrid_info.Fields[0].Value;//保存id
      self.edt_name.Text :=self.DBGrid_info.Fields[1].Value;
      self.cbx_class.Tag:=self.DBGrid_info.Fields[2].Value;
      self.cbx_class.Text:=self.DBGrid_info.Fields[3].Value;
    end;
end;

procedure Tfrm_class.btn_editClick(Sender: TObject);
var
  Classes:TClasses;
begin
inherited;
  if edt_name.Text ='' then
    begin
       MessageBox(Handle, '没有可以修改的数据!', '信息', MB_ICONEXCLAMATION);
      exit;
    end;
  //查找是否存在重复
  Classes:=TClasses.Create;
  Classes:=GetclassesByName(trim(edt_name.Text));
  if(Classes<>nil) then
    begin
      if(Classes.id<>edt_name.Tag) then
        begin
          MessageBox(Handle, '该院系班级已经存在,请重新设置!', '信息', MB_ICONEXCLAMATION);
          exit;
        end;
    end;
  Classes:=TClasses.Create;
  Classes.id:=edt_name.Tag;
  Classes.className:=edt_name.Text;
  Classes.fatherID:=self.cbx_class.Tag;
  if(Control_ClassU.EditClasses(Classes)) then
    begin
      MessageBox(Handle, '修改成功!', '信息', MB_ICONASTERISK);
      //刷新内容
      FillData;
    end
  else
     begin
      MessageBox(Handle, '修改失败!', '信息', MB_ICONEXCLAMATION);
      exit;
     end;
  self.edt_name.SetFocus;
end;

procedure Tfrm_class.DBGrid_infoCellClick(Column: TColumn);
begin
  inherited;
self.edt_name.Tag:=self.DBGrid_info.Fields[0].Value;//保存id
self.edt_name.Text :=self.DBGrid_info.Fields[1].Value;
self.cbx_class.Tag:=self.DBGrid_info.Fields[2].Value;
self.cbx_class.Text:=self.DBGrid_info.Fields[3].Value;
end;

end.

⌨️ 快捷键说明

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