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

📄 rm_class.pas.~2~

📁 胜天进销存源码,国产优秀的进销存
💻 ~2~
📖 第 1 页 / 共 5 页
字号:
    class function CanPlaceOnGridView: Boolean; virtual;
    constructor Create; virtual;
    destructor Destroy; override;
    procedure Assign(From: TRMView);
    procedure CalcGaps; virtual;
    procedure RestoreCoord; virtual;
    procedure Draw(aCanvas: TCanvas); virtual; abstract;
    procedure StreamOut(Stream: TStream); virtual;
    procedure ExportData; virtual;
    procedure LoadFromStream(Stream: TStream); virtual;
    procedure SaveToStream(Stream: TStream); virtual;
    procedure Resized; virtual;
    procedure DefinePopupMenu(Popup: TPopupMenu); virtual;
    function GetClipRgn(rt: TRMRgnType): HRGN; virtual;
    procedure CreateUniqueName;
    procedure SetBounds(Left, Top, Width, Height: Integer); virtual;
    procedure DefineProperties; override;
    procedure ShowEditor; virtual;

    property PStretched: Boolean read GetStretched write SetStretched;
    property PWantHook: Boolean read GetWantHook write SetWantHook;
    property PPrintFrame: Boolean read GetPrintFrame write SetPrintFrame;
    property PPrintVisible: Boolean read GetPrintVisible write SetPrintVisible;
    property PChildView: Boolean read GetChildView write SetChildView;
    property PTextOnly: Boolean read GetTextOnly write SetTextOnly;
    property POnePerPage: Boolean read GetOnePerPage write SetOnePerPage;
  end;

  { TRMControl }
  TRMControl = class(TRMView)
  private
  protected
    FControl: TControl;
    procedure PaintDesignControl; virtual;
    procedure SetPropValue(Index: string; Value: Variant); override;
  public
    constructor Create; override;
    destructor Destroy; override;
    procedure DefineProperties; override;
    procedure PlaceControl(Form: TForm);
    procedure Draw(aCanvas: TCanvas); override;
    procedure DefinePopupMenu(Popup: TPopupMenu); override;
    property Control: TControl read FControl;
  published
  end;

  { TRMNonVisualControl }
  TRMNonVisualControl = class(TRMControl)
  protected
    BmpRes: string;
    Component: TComponent;
    FFixupList: TRMVariables;
    procedure SetPropValue(Index: string; Value: Variant); override;
    procedure PaintDesignControl; override;
  public
    constructor Create; override;
    destructor Destroy; override;
    procedure DefineProperties; override;
    procedure PlaceControl(Form: TForm);
    procedure Draw(aCanvas: TCanvas); override;
  end;

  { TRMRegionView }
  TRMRegionView = class(TRMView)
  private
  protected
  public
    class function CanPlaceOnGridView: Boolean; override;
    constructor Create; override;
    destructor Destroy; override;
    procedure BeforeMove(aPage: TRMPage; aKx, aKy: Integer);
    procedure Draw(aCanvas: TCanvas); override;
    procedure DefineProperties; override;
  end;

  { TRMStretcheable }
  TRMStretcheable = class(TRMView)
  private
  protected
    ActualHeight: Integer;
    DrawMode: TRMDrawMode;
    function CalcHeight: Integer; virtual; abstract;
    function MinHeight: Integer; virtual; abstract;
    function LostSpace: Integer; virtual; abstract;
    function RemainHeight: Integer; virtual; abstract;
  public
  end;

  { TRMMemoView }
  TRMMemoView = class(TRMStretcheable)
  private
    FFontScaleWidth: Word;
    FLastStreamPosition: Integer;
    FLasty: Integer;
    FFont: TFont;
    FLastValue, FLastValue1: string;
    FWrapped: Boolean;
    FScaleFontType: TRMScaleFontType;
    procedure P1Click(Sender: TObject);
    procedure P2Click(Sender: TObject);
    procedure P5Click(Sender: TObject);
    procedure P6Click(Sender: TObject);
    procedure P8Click(Sender: TObject);
    procedure P9Click(Sender: TObject);
    procedure P10Click(Sender: TObject);
    procedure P11Click(Sender: TObject);
    procedure SetFont(Value: TFont);
    function GetAlignment: TRMAlignment;
    procedure SetAlignment(value: TRMAlignment);
    function GetLayout: TRMLayout;
    procedure SetLayout(value: TRMLayout);
    function GetUnderlines: Boolean;
    procedure SetUnderlines(value: Boolean);
    function GetHideZeros: Boolean;
    procedure SetHideZeros(value: Boolean);
    function GetWordWrap: Boolean;
    procedure SetWordWrap(value: Boolean);
    function GetAutoSize: Boolean;
    procedure SetAutoSize(value: Boolean);
    function GetSuppressRepeated: Boolean;
    procedure SetSuppressRepeated(value: Boolean);
    function GetRotation90: Boolean;
    procedure SetRotation90(value: Boolean);
    function GetWordBreak: Boolean;
    procedure SetWordBreak(Value: Boolean);
    function GetMergeRepeated: Boolean;
    procedure SetMergeRepeate(Value: Boolean);
    function GetMangeTag: Boolean;
    procedure SetMangeTag(Value: Boolean);
    function GetScaleFontSize: Boolean;
    procedure SetScaleFontSize(Value: Boolean);
    function GetPrintAtAppendBlank: Boolean;
    procedure SetPrintAtAppendBlank(Value: Boolean);
  protected
    Streaming: Boolean;
    TextHeight: Integer;
    CurStrNo: Integer;
    Exporting: Boolean;
    FMergeEmpty: Boolean;
    procedure ExpandMemoVariables; virtual;
    procedure AssignFont(aCanvas: TCanvas);
    procedure WrapMemo;
    procedure ShowMemo;
    procedure ShowUnderLines;
    function CalcWidth(Memo: TStringList): Integer;
    function CalcHeight: Integer; override;
    function MinHeight: Integer; override;
    function LostSpace: Integer; override;
    function RemainHeight: Integer; override;
    procedure GetBlob(b: TField); override;
    procedure SetPropValue(Index: string; Value: Variant); override;
    function GetPropValue(Index: string): Variant; override;
    function DoMethod(const MethodName: string; Pars: array of Variant): Variant; override;

    function AllowInplaceEdit: boolean; override;
    procedure InplaceEdit(aParent: TWinControl; var InplaceEditor: TWinControl); override;
    procedure SaveInplaceEdit(aInplaceEditor: TWinControl); override;

    property LastValue: string read FLastValue write FLastValue;
  public
    Alignment: Integer;
    Highlight: TRMHighlightAttr;
    HighlightStr: string;
    LineSpacing, CharacterSpacing: Integer;
    RotationType: TRMRotationType;
    constructor Create; override;
    destructor Destroy; override;
    procedure Draw(aCanvas: TCanvas); override;
    procedure StreamOut(Stream: TStream); override;
    procedure ExportData; override;
    procedure LoadFromStream(Stream: TStream); override;
    procedure SaveToStream(Stream: TStream); override;
    procedure DefinePopupMenu(Popup: TPopupMenu); override;
    procedure DefineProperties; override;
    procedure ShowEditor; override;

    property Font: TFont read FFont write SetFont;
    property PAlignment: TRMAlignment read GetAlignment write SetAlignment;
    property PLayout: TRMLayout read GetLayout write SetLayout;
    property PUnderlines: Boolean read GetUnderlines write SetUnderlines;
    property PHideZeros: Boolean read GetHideZeros write SetHideZeros;
    property PWordWrap: Boolean read GetWordWrap write SetWordWrap;
    property PAutoSize: Boolean read GetAutoSize write SetAutoSize;
    property PSuppressRepeated: Boolean read GetSuppressRepeated write SetSuppressRepeated;
    property PMergeRepeated: Boolean read GetMergeRepeated write SetMergeRepeate;
    property PRotation90: Boolean read GetRotation90 write SetRotation90;
    property PWordBreak: Boolean read GetWordBreak write SetWordBreak;
    property PMangeTag: Boolean read GetMangeTag write SetMangeTag;
    property PScaleFontSize: Boolean read GetScaleFontSize write SetScaleFontSize;
    property PPrintAtAppendBlank: Boolean read GetPrintAtAppendBlank write SetPrintAtAppendBlank;
  end;

  { TRMBandView }
  TRMBandView = class(TRMView)
  private
    FColumns: integer;
    procedure P1Click(Sender: TObject);
    procedure P2Click(Sender: TObject);
    procedure P3Click(Sender: TObject);
    procedure P4Click(Sender: TObject);
    procedure P5Click(Sender: TObject);
    procedure P6Click(Sender: TObject);
    procedure P7Click(Sender: TObject);
    procedure P8Click(Sender: TObject);
    function GetBandType: TRMBandType;
    procedure SetBandType(const Value: TRMBandType);
    function GetRectangleWidth: Integer;

    function GetBandNewPage: Boolean;
    procedure SetBandNewPage(value: Boolean);
    function GetPrintEmpty: Boolean;
    procedure SetPrintEmpty(value: Boolean);
    function GetBreaked: Boolean;
    procedure SetBreaked(value: Boolean);
    function GetOnFirstPage: Boolean;
    procedure SetOnFirstPage(value: Boolean);
    function GetOnLastPage: Boolean;
    procedure SetOnLastPage(value: Boolean);
    function GetRepeatHeader: Boolean;
    procedure SetRepeatHeader(value: Boolean);
    function GetPrintChildIfInvisible: Boolean;
    procedure SetPrintChildIfInvisible(value: Boolean);
    function GetAutoAppendBlank: Boolean;
    procedure SetAutoAppendBlank(value: Boolean);
    function GetPrintColFirst: Boolean;
    procedure SetPrintColFirst(value: Boolean);
    procedure SetColumns(Value: Integer);
    function GetPrintatDesignPos: Boolean;
    procedure SetPrintatDesignPos(Value: Boolean);
  protected
    procedure SetPropValue(Index: string; Value: Variant); override;
    function GetPropValue(Index: string): Variant; override;
    function DoMethod(const MethodName: string; Pars: array of Variant): Variant; override;
    property NewPageCondition: string read Tag write Tag;
  public
    ChildBand, Master: string;
    ColumnWidth: integer;
    ColumnGap: integer;
    NewColumnAfter: Integer;
    LinesPerPage: Word;
    RangeBegin, RangeEnd: Byte;
    RangeEndCount: Integer;
    constructor Create; override;
    procedure Draw(aCanvas: TCanvas); override;
    procedure LoadFromStream(Stream: TStream); override;
    procedure SaveToStream(Stream: TStream); override;
    procedure DefinePopupMenu(Popup: TPopupMenu); override;
    procedure DefineProperties; override;
    function GetClipRgn(rt: TRMRgnType): HRGN; override;

    property Columns: integer read FColumns write SetColumns;
    property BandType: TRMBandType read GetBandType write SetBandType;
    property DataSet: string read FormatStr write FormatStr;
    property GroupCondition: string read FormatStr write FormatStr;
    property PNewPageAfter: Boolean read GetBandNewPage write SetBandNewPage;
    property PPrintIfSubsetEmpty: Boolean read GetPrintEmpty write SetPrintEmpty;
    property PBreaked: Boolean read GetBreaked write SetBreaked;
    property POnFirstPage: Boolean read GetOnFirstPage write SetOnFirstPage;
    property POnLastPage: Boolean read GetOnLastPage write SetOnLastPage;
    property PRepeatHeader: Boolean read GetRepeatHeader write SetRepeatHeader;
    property PPrintChildIfInvisible: Boolean read GetPrintChildIfInvisible write SetPrintChildIfInvisible;
    property PAutoAppendBlank: Boolean read GetAutoAppendBlank write SetAutoAppendBlank;
    property PPrintColFirst: Boolean read GetPrintColFirst write SetPrintColFirst;
    property PPrintatDesignPos: Boolean read GetPrintatDesignPos write SetPrintatDesignPos;
  end;

  { TRMSubReportView }
  TRMSubReportView = class(TRMView)
  public
    SubPage: Integer;
    constructor Create; override;
    procedure Draw(aCanvas: TCanvas); override;
    procedure LoadFromStream(Stream: TStream); override;
    procedure SaveToStream(Stream: TStream); override;
    procedure DefinePopupMenu(Popup: TPopupMenu); override;
  end;

  { TRMPictureView }
  TRMPictureView = class(TRMView)
  private
    FPicture: TPicture;
    procedure P1Click(Sender: TObject);
    procedure P2Click(Sender: TObject);

    function GetPictureCenter: Boolean;
    procedure SetPictureCenter(const value: Boolean);
    function GetPictureRatio: Boolean;
    procedure SetPictureRatio(value: Boolean);
    function GetTransparent: Boolean;
    procedure SetTransparent(value: Boolean);
  protected
    function GetViewCommon: string; override;
    procedure SetPropValue(Index: string; Value: Variant); override;
    function GetPropValue(Index: string): Variant; override;
    function DoMethod(const MethodName: string; Pars: array of Variant): Variant; override;
    procedure GetBlob(b: TField); override;
  public
    BlobType: Byte;
    constructor Create; override;
    destructor Destroy; override;
    procedure Draw(aCanvas: TCanvas); override;
    procedure LoadFromStream(Stream: TStream); override;
    procedure SaveToStream(Stream: TStream); override;
    procedure DefinePopupMenu(Popup: TPopupMenu); override;
    procedure DefineProperties; override;
    procedure ShowEditor; override;

    property Picture: TPicture read FPicture;
    property PPictureCenter: Boolean read GetPictureCenter write SetPictureCenter;
    property PPictureRatio: Boolean read GetPictureRatio write SetPictureRatio;
    property PTransparent: Boolean read GetTransparent write SetTransparent;
  end;

  { TRMLineView }
  TRMLineView = class(TRMStretcheable)
  public
    constructor Create; override;
    procedure Draw(aCanvas: TCanvas); override;
    function CalcHeight: Integer; override;
    function MinHeight: Integer; override;
    function LostSpace: Integer; override;
    function RemainHeight: Integer; override;
    procedure DefineProperties; override;
  end;

  { TRMCalcMemoView }
  TRMCalcMemoView = class(TRMMemoView)
  private
    FMyVersion: Byte;
    FValueIndex: Integer;
    FValues: TStringList;
    FAggrBandName: string;
    FResetAfterPrint: Boolean;
    FCalcType: TRMDBCalcType;
    FFilter, FOPZFilter: string;
    FValue: Double;
    FResAssigned: Boolean;
    FSum: Double;
    FCount: Integer;
    FExpression: string;
    FIntalizeValue: string;
    FAggregateValue: string;
    function GetValue: Double;
    procedure P2Click(Sender: TObject);
    procedure ResetValues;
    procedure AfterPrint;
    function GetTotalCalc: Boolean;
    procedure SetTotalCalc(aValue: Boolean);

⌨️ 快捷键说明

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