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

📄 baseeditform.pas

📁 用户名:SYSTEM 密码:空 第一次运行请先恢复数据库 DATABASE 到SQL服务器
💻 PAS
字号:
unit BaseEditForm;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, BaseChildForm, ImgList, DB, Grids, Wwdbigrd, Wwdbgrid, ExtCtrls,
  ComCtrls, StdCtrls, Buttons,BaseMainform,DataMod;

type
  TfBaseEditForm = class(TfBaseChildForm)
    PageControl: TPageControl;
    tbsEdit: TTabSheet;
    Panel2: TPanel;
    btnNew: TBitBtn;
    btnModify: TBitBtn;
    btnDelete: TBitBtn;
    btnSave: TBitBtn;
    btnCancel: TBitBtn;
    tbsBrowser: TTabSheet;
    wwDBGrid: TwwDBGrid;
    DataSource: TDataSource;
    ImageList1: TImageList;
    Panel1: TPanel;
    pnlFieldsPanel: TPanel;
    procedure DataSourceStateChange(Sender: TObject);
    procedure btnNewClick(Sender: TObject);
    procedure btnModifyClick(Sender: TObject);
    procedure btnDeleteClick(Sender: TObject);
    procedure btnSaveClick(Sender: TObject);
    procedure btnCancelClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure PageControlChange(Sender: TObject);
    procedure wwDBGridCalcCellColors(Sender: TObject; Field: TField;
      State: TGridDrawState; Highlight: Boolean; AFont: TFont;
      ABrush: TBrush);
  private
    { Private declarations }
  public
    { Public declarations }
      FirstFocusControl: TWinControl;
  end;

var
  fBaseEditForm: TfBaseEditForm;

implementation

{$R *.dfm}

procedure TfBaseEditForm.DataSourceStateChange(Sender: TObject);
var
  lState:Boolean;
begin
  if DataSource.DataSet=nil then begin
       btnNew.Enabled :=False;
       btnModify.Enabled :=False;
       btnDelete.Enabled :=False;
       btnSave.Enabled :=False;
       btnCancel.Enabled :=False;
       pnlFieldsPanel.Enabled :=False;
       tfBaseMainform(application.MainForm).NewRecord.Enabled :=false ;
       tfBaseMainform(application.MainForm).ModifyRecord.Enabled :=False;
       tfBaseMainform(application.MainForm).DeleteRecord.Enabled :=False;
       tfBaseMainform(application.MainForm).PostRecord.Enabled :=False;
       tfBaseMainform(application.MainForm).CancelRecord.Enabled :=False;
       tfBaseMainform(application.MainForm).spbNew.Enabled :=False;
       tfBaseMainform(application.MainForm).spbModify.Enabled :=False;
       tfBaseMainform(application.MainForm).spbDelete.Enabled :=False;
       tfBaseMainform(application.MainForm).spbPost.Enabled :=False;
       tfBaseMainform(application.MainForm).spbCancel.Enabled :=False;
       Exit;
   end;
   lstate:= Self.DataSource.DataSet.State in [dsInsert,dsEdit];
   btnNew.Enabled:=not lstate;
   btnModify.Enabled:=not lstate;
   btnDelete.Enabled:=not lstate;
   btnSave.Enabled:=lstate;
   btnCancel.Enabled:=lstate;
   pnlFieldsPanel.Enabled:=lstate;
   wwdbgrid.Enabled :=not lstate;
   tfBaseMainform(application.MainForm).NewRecord.Enabled :=not lstate ;
   tfBaseMainform(application.MainForm).ModifyRecord.Enabled :=not lstate;
   tfBaseMainform(application.MainForm).DeleteRecord.Enabled :=not lstate;
   tfBaseMainform(application.MainForm).PostRecord.Enabled :=lstate;
   tfBaseMainform(application.MainForm).CancelRecord.Enabled :=lstate;
   tfBaseMainform(application.MainForm).spbNew.Enabled :=not lstate;
   tfBaseMainform(application.MainForm).spbModify.Enabled :=not lstate;
   tfBaseMainform(application.MainForm).spbDelete.Enabled :=not lstate;
   tfBaseMainform(application.MainForm).spbPost.Enabled :=lstate;
   tfBaseMainform(application.MainForm).spbCancel.Enabled :=lstate;
   if (not lstate) and (Self.Visible=True) and  btnNew.CanFocus   then
        btnNew.SetFocus;
   if lstate and (FirstFocusControl<>nil)
                and Self.FirstFocusControl.CanFocus then
       FirstFocuscontrol.SetFocus ;

end;

procedure TfBaseEditForm.btnNewClick(Sender: TObject);
begin
if not  AccessRight.AddRecord  then Begin
        Application.MessageBox('癸ぃ癬

⌨️ 快捷键说明

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