umasteradapterdatagridview.pas

来自「一整套的源代码」· PAS 代码 · 共 63 行

PAS
63
字号
unit UMasterAdapterDataGridView;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, UAdapterDataGridView, cxStyles, cxCustomData, cxGraphics,
  cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, dxPSGlbl, dxPSUtl,
  dxPSEngn, dxPrnPg, dxBkgnd, dxWrap, dxPrnDev, dxPSCompsProvider,
  dxPSFillPatterns, dxPSEdgePatterns, dxPSCore, RzCommon, cxGridLevel,
  cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView,
  cxGridTableView, cxGridDBTableView, cxGrid, jpeg, RzBckgnd, ExtCtrls,
  RzPanel,
  MyView, UView, UDataItemView, MyTools;

type
  TMasterAdapterDataGridView = class(TAdapterDataGridView, IMasterDetail)
    procedure GridDBTableViewDblClick(Sender: TObject);
  protected
    function GetDetailView: TView; virtual; abstract;
  public
{---------------------------------------- IMasterDetail ----------------------------------------}
    procedure ShowDetailView; virtual;
  public
    procedure Append(Parameters: IParameters); override;
  end;

implementation

uses
  UModel, UDialogDataItemView;

{$R *.dfm}

{ TMasterAdapterDataGridView }

procedure TMasterAdapterDataGridView.ShowDetailView;
var
  Dialog: TDialogDataItemView;
  View: TDataItemView;
begin
  if not GetDataModel.GetDataSet.Active or GetDataModel.GetDataSet.IsEmpty then Exit;
  View := TDataItemView(GetDetailView);
  Dialog := TDialogDataItemView.Create(Owner, View);
  Dialog.ShowModal;
  Dialog.Free;
end;

procedure TMasterAdapterDataGridView.GridDBTableViewDblClick(Sender: TObject);
begin
  inherited;
  ShowDetailView;
end;

procedure TMasterAdapterDataGridView.Append(Parameters: IParameters);
begin
  inherited;
  ShowDetailView;
end;

end.

⌨️ 快捷键说明

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