📄 classmanage.pas
字号:
unit classmanage;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, DB, StdCtrls, Buttons, Mask, ADODB;
type
TClassForm = class(TForm)
DataSource1: TDataSource;
DBGrid1: TDBGrid;
GroupBox1: TGroupBox;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
MaskEdit1: TMaskEdit;
Label4: TLabel;
Edit3: TEdit;
Label5: TLabel;
Edit4: TEdit;
Label6: TLabel;
Edit5: TEdit;
Label7: TLabel;
Edit6: TEdit;
Label8: TLabel;
Edit7: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
ADOConnection1: TADOConnection;
BitBtn3: TBitBtn;
BitBtn4: TBitBtn;
ADOTable1: TADOTable;
Label9: TLabel;
Edit8: TEdit;
procedure BitBtn2Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure Edit1Exit(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure ADOTable1AfterScroll(DataSet: TDataSet);
procedure BitBtn4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure initiate;
procedure SaveToTable;
procedure LoadFromTable;
end;
var
ClassForm: TClassForm;
new_record:boolean;
implementation
uses main;
{$R *.dfm}
procedure TClassForm.BitBtn2Click(Sender: TObject);
begin
close;
end;
procedure TClassForm.FormActivate(Sender: TObject);
begin
dbgrid1.DataSource:=datasource1;
datasource1.DataSet:=adotable1;
adotable1.Connection:=adoconnection1;
adotable1.tablename:='班级表';
adotable1.active:=true;
initiate;
new_record:=false;
if adotable1.Eof then
bitbtn4.Enabled:=false
else
loadfromtable;
end;
procedure TClassForm.initiate;
begin
edit1.Text:='';
edit2.Text:='';
edit3.Text:='';
edit4.Text:='';
edit5.Text:='';
edit6.Text:='';
edit7.Text:='';
edit8.text:='';
maskedit1.text:=Datetostr(date());
edit1.SetFocus;
end;
procedure TClassForm.BitBtn3Click(Sender: TObject);
begin
initiate;
new_record:=true;
end;
procedure TClassForm.Edit1Exit(Sender: TObject);
var
adodataset1:TAdoDataset;
begin
if edit1.text<>'' then
begin
adodataset1:=TAdoDataset.Create(self);
adodataset1.Connection:=adoconnection1;
adodataset1.Close;
adodataset1.CommandType:=cmdText;
adodataset1.CommandText:='select * from 班级表 where 班级名=:classname';
adodataset1.Parameters.clear;
adodataset1.Parameters.AddParameter;
adodataset1.Parameters[0].Name:='classname';
adodataset1.Parameters[0].DataType:=ftstring;
adodataset1.Parameters[0].Direction:=pdinput;
adodataset1.Parameters[0].Value:=edit1.text;
adodataset1.active:=true;
if new_record then
begin
if adodataset1.Recordset.RecordCount=1 then
begin
application.MessageBox('您输入班级名错误,请检查!','提示信息',mb_ok);
edit1.SetFocus;
end
end;
adodataset1.close;
end;
end;
procedure TClassForm.BitBtn1Click(Sender: TObject);
begin
if new_record then
begin
adotable1.Append;
adotable1.FieldByName('书费').AsCurrency:=0;
new_record:=false;
end;
savetotable;
if adotable1.Recordset.RecordCount>0 then
bitbtn4.Enabled:=true;
end;
procedure TClassForm.SaveToTable;
begin
adotable1.edit;
adotable1.FieldByName('班级名').asstring:=edit1.text;
adotable1.FieldByName('入学时间').asdatetime:=StrToDate(maskedit1.text);
adotable1.FieldByName('所在院系').AsString:=edit3.text;
adotable1.FieldByName('班长').asstring:=edit4.text;
adotable1.fieldbyname('班长联系电话').asstring:=edit5.text;
adotable1.FieldByName('班主任').asstring:=edit6.text;
adotable1.FieldByName('班主任联系电话').asstring:=edit7.text;
adotable1.FieldByName('操作员').asstring:=username;
adotable1.FieldByName('最后修改时间').asdatetime:=date();
adotable1.FieldByName('所学专业').asstring:=edit2.text;
adotable1.FieldByName('班级人数').asinteger:=StrToInt(edit8.text);
adotable1.Post;
end;
procedure TClassForm.LoadFromTable;
begin
edit1.text:=adotable1.FieldByName('班级名').asstring;
maskedit1.text:=DatetoStr(adotable1.FieldByName('入学时间').asdatetime);
edit3.text:=adotable1.FieldByName('所在院系').AsString;
edit4.text:=adotable1.FieldByName('班长').asstring;
edit5.Text:=adotable1.fieldbyname('班长联系电话').asstring;
edit6.text:=adotable1.FieldByName('班主任').asstring;
edit7.Text:=adotable1.FieldByName('班主任联系电话').asstring;
edit2.text:=adotable1.FieldByName('所学专业').asstring;
edit8.text:=IntToStr(adotable1.FieldByName('班级人数').asinteger);
end;
procedure TClassForm.ADOTable1AfterScroll(DataSet: TDataSet);
begin
IF NOT NEW_RECORD THEN
loadfromtable;
end;
procedure TClassForm.BitBtn4Click(Sender: TObject);
begin
adotable1.Delete;
adotable1.first;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -