📄 cfcalss.pas
字号:
unit cFcalss;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, ExtCtrls, Buttons, StdCtrls, Mask, DBCtrls;
type
TFrmClass = class(TForm)
DBGrid1: TDBGrid;
Label1: TLabel;
Label2: TLabel;
btnadd: TSpeedButton;
btndel: TSpeedButton;
btnok: TSpeedButton;
btncancel: TSpeedButton;
btnprint: TSpeedButton;
dbid: TDBEdit;
dbcClass: TDBEdit;
Panel1: TPanel;
btnclose: TSpeedButton;
Label3: TLabel;
Edit1: TEdit;
btnq1: TSpeedButton;
btnq2: TSpeedButton;
Label4: TLabel;
Edit2: TEdit;
btnq3: TSpeedButton;
Label5: TLabel;
Label6: TLabel;
Edit3: TEdit;
Edit4: TEdit;
procedure FormCreate(Sender: TObject);
procedure btnaddClick(Sender: TObject);
procedure btndelClick(Sender: TObject);
procedure btnokClick(Sender: TObject);
procedure btncancelClick(Sender: TObject);
procedure dbcClassClick(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
procedure btncloseClick(Sender: TObject);
procedure btnq1Click(Sender: TObject);
procedure btnq2Click(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure btnq3Click(Sender: TObject);
procedure btnprintClick(Sender: TObject);
private
{ Private declarations }
formmode :string;
procedure btnmode;
procedure insertmode;
procedure editmode;
procedure normalmode;
public
{ Public declarations }
end;
var
FrmClass: TFrmClass;
implementation
uses MainD,UTIL,Urep;
{$R *.dfm}
procedure TFrmClass.FormCreate(Sender: TObject);
begin
normalmode;
With MainDFrm do
begin
qutil.SQL.Clear;
qutil.SQL.Add('Select cID,cClass from Classinfo');
Uqutil.InsertSQL.Clear;
Uqutil.InsertSQL.Add('insert into Classinfo(cID,cClass)');
Uqutil.InsertSQL.Add('values');
Uqutil.InsertSQL.Add('(:cID,:cClass)');
Uqutil.ModifySQL.Clear;
Uqutil.ModifySQL.Add('Update Classinfo set');
Uqutil.ModifySQL.Add('cClass=:cClass');
Uqutil.ModifySQL.Add(' Where cID=:cID');
Uqutil.DeleteSQL.Clear;
Uqutil.DeleteSQL.Add('DELETE FROM Classinfo ');
Uqutil.DeleteSQL.Add('WHERE cID =:cID AND cClass =:cClass');
qutil.Close;
qutil.Open;
end;
dbID.DataField := 'cID';
dbcClass.DataField := 'cClass';
end;
procedure TFrmClass.btnmode;
begin
dbid.Enabled := false;
btnadd.Enabled := false;
btndel.Enabled := false;
btnok.Enabled := false;
btncancel.Enabled:= false;
btnprint.Enabled := false;
btnq1.Enabled := false;
btnq2.Enabled := false;
btnq3.Enabled := false;
if formmode = 'normal' then
begin
dbid.Enabled := false;
btnadd.Enabled := true;
btndel.Enabled := true;
btnok.Enabled := false;
btncancel.Enabled:= false;
btnprint.Enabled := true;
btnq1.Enabled := true;
btnq2.Enabled := true;
btnq3.Enabled := true;
btnclose.Enabled := true;
DBGrid1.Enabled := true;
end else if (formmode = 'ins') or (formmode = 'edt') then
begin
if formmode = 'ins' then
dbid.Enabled := true;
btnadd.Enabled := false;
btndel.Enabled := false;
btnok.Enabled := true;
btncancel.Enabled:= true;
btnprint.Enabled := false;
btnq1.Enabled := false;
btnq2.Enabled := false;
btnq3.Enabled := false;
btnclose.Enabled := false;
DBGrid1.Enabled := false;
end;
end;
procedure TFrmClass.editmode;
begin
formmode := 'edt';
btnmode;
end;
procedure TFrmClass.insertmode;
begin
formmode := 'ins';
btnmode;
end;
procedure TFrmClass.normalmode;
begin
formmode := 'normal';
btnmode;
end;
procedure TFrmClass.btnaddClick(Sender: TObject);
begin
if MaindFrm.CheckPermission(UserID,'classadd')=False then exit;
insertmode;
MaindFrm.qutil.Append;
MaindFrm.qutil.FieldByName('cID').Value:='';
MaindFrm.qutil.FieldByName('cClass').Value:='';
dbID.SetFocus;
end;
procedure TFrmClass.btndelClick(Sender: TObject);
begin
if MaindFrm.CheckPermission(UserID,'classdel')=False then exit;
normalmode;
if messagebox(Application.Handle,'如果您点确定键此条记录将被删除','警告',
mb_ICONWarning+mb_yesno+mb_defbutton2)= mryes then
with MainDFrm do
begin
Uqutil.DeleteSQL.Clear;
Uqutil.DeleteSQL.Add('DELETE FROM Classinfo ');
Uqutil.DeleteSQL.Add('WHERE cID ='''+dbid.Field.Value+'''');
try
qutil.Delete;
qutil.Database.StartTransaction;
qutil.ApplyUpdates;
qutil.CommitUpdates;
qutil.Database.Commit;
except
qutil.Database.Rollback;
qutil.CancelUpdates;
showmessage('存盘失败!');
end;
end;
end;
procedure TFrmClass.btnokClick(Sender: TObject);
begin
with MainDFrm do
try
qutil.Post;
qutil.Database.StartTransaction;
qutil.ApplyUpdates;
qutil.CommitUpdates;
qutil.Database.Commit;
except
qutil.Database.Rollback;
qutil.CancelUpdates;
showmessage('存盘失败!');
end;
normalmode;
end;
procedure TFrmClass.btncancelClick(Sender: TObject);
begin
if messagebox(0,'确定不新增本条数据?','提示',
mb_ICONInformation+mb_yesno+mb_defbutton2)= mryes then
begin
MainDFrm.qutil.Cancel;
normalmode;
end;
end;
procedure TFrmClass.dbcClassClick(Sender: TObject);
begin
//if MaindFrm.CheckPermission(UserID,'classdel')=False then exit;
editmode;
MainDFrm.qutil.Edit;
//MaindFrm.qutil.FieldByName('cID').Value:=dbid.Field.Value;
//MaindFrm.qutil.FieldByName('cClass').Value:=dbclass.Field.Value;
end;
procedure TFrmClass.DBGrid1CellClick(Column: TColumn);
begin
normalmode;
end;
procedure TFrmClass.btncloseClick(Sender: TObject);
begin
close;
end;
procedure TFrmClass.btnq1Click(Sender: TObject);
begin
MainDFrm.qutil.SQL.Clear;
MainDFrm.qutil.SQL.Add('Select * from Classinfo');
MainDFrm.qutil.SQL.Add('Where cID >='''+edit1.text +'''');
MainDFrm.qutil.SQL.Add('And cID<='''+edit3.text+'''');
MaindFrm.qutil.Close;
MaindFrm.qutil.Open;
end;
procedure TFrmClass.btnq2Click(Sender: TObject);
begin
MainDFrm.qutil.SQL.Clear;
MainDFrm.qutil.SQL.Add('Select * from Classinfo');
MainDFrm.qutil.SQL.Add('Where cClass ='''+edit2.text +'''');
MainDFrm.qutil.SQL.Add('And cClass<='''+edit4.text+'''');
MaindFrm.qutil.Close;
MaindFrm.qutil.Open;
end;
procedure TFrmClass.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
canClose := True;
if (formmode = 'ins') or (formmode = 'edt') then
begin
MessageBox(application.Handle,'请先结束输入模式后再离开','警告',
mb_ICONWarning+mb_OK);
canClose := False;
end;
end;
procedure TFrmClass.btnq3Click(Sender: TObject);
begin
MainDFrm.qutil.SQL.Clear;
MainDFrm.qutil.SQL.Add('Select * from Classinfo');
MaindFrm.qutil.Close;
MaindFrm.qutil.Open;
end;
procedure TFrmClass.btnprintClick(Sender: TObject);
var
repfrm: Trepfrm;
begin
repfrm := Trepfrm.Create(Application);
repfrm.QRLabel1.Caption := school+' 班级一览表';
repfrm.QRLabel2.Caption := '班级编号';
repfrm.QRLabel3.Caption := '班级名称';
repfrm.QRDBText1.DataSet := MainDFrm.qutil;
repfrm.QRDBText2.DataSet := MainDFrm.qutil;
repfrm.QRDBText1.DataField := 'cID';
repfrm.QRDBText2.DataField := 'cClass';
try
repfrm.PreviewModal;
finally
repfrm.Free;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -