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

📄 cfcalss.pas

📁 采用access或ms-sql, oracle数据库 功能: 1。用户管理
💻 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 + -