📄 frm_classu.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 + -