📄 frxdctrl.pas
字号:
{******************************************}
{ }
{ FastReport v2.4 - Dialog designer }
{ Standard Dialog controls }
{ }
{ Copyright (c) 1998-2008 }
{ by Alexander Tzyganenko, }
{ Fast Reports Inc. }
{ }
{******************************************}
unit frxDCtrl;
interface
{$I frx.inc}
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, StdCtrls,
ExtCtrls, Forms, Menus, Dialogs, Comctrls, Buttons, Mask, CheckLst, frxClass
{$IFDEF Delphi6}
, Variants
{$ENDIF};
type
TfrxDialogControls = class(TComponent) // fake component
end;
TfrxLabelControl = class(TfrxDialogControl)
private
FLabel: TLabel;
function GetAlignment: TAlignment;
function GetAutoSize: Boolean;
function GetWordWrap: Boolean;
procedure SetAlignment(const Value: TAlignment);
procedure SetAutoSize(const Value: Boolean);
procedure SetWordWrap(const Value: Boolean);
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
procedure BeforeStartReport; override;
procedure Draw(Canvas: TCanvas; ScaleX, ScaleY, OffsetX, OffsetY: Extended); override;
property LabelCtl: TLabel read FLabel;
published
property Alignment: TAlignment read GetAlignment write SetAlignment
default taLeftJustify;
property AutoSize: Boolean read GetAutoSize write SetAutoSize default True;
property Caption;
property Color;
property WordWrap: Boolean read GetWordWrap write SetWordWrap default False;
property OnClick;
property OnDblClick;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
end;
TfrxCustomEditControl = class(TfrxDialogControl)
private
FOnChange: TfrxNotifyEvent;
function GetMaxLength: Integer;
function GetPasswordChar: Char;
function GetReadOnly: Boolean;
function GetText: String;
procedure DoOnChange(Sender: TObject);
procedure SetMaxLength(const Value: Integer);
procedure SetPasswordChar(const Value: Char);
procedure SetReadOnly(const Value: Boolean);
procedure SetText(const Value: String);
protected
FCustomEdit: TCustomEdit;
public
constructor Create(AOwner: TComponent); override;
property MaxLength: Integer read GetMaxLength write SetMaxLength;
property PasswordChar: Char read GetPasswordChar write SetPasswordChar;
property ReadOnly: Boolean read GetReadOnly write SetReadOnly default False;
property Text: String read GetText write SetText;
property OnChange: TfrxNotifyEvent read FOnChange write FOnChange;
end;
TfrxEditControl = class(TfrxCustomEditControl)
private
FEdit: TEdit;
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property Edit: TEdit read FEdit;
published
property Color;
property MaxLength;
property PasswordChar;
property ReadOnly;
property TabStop;
property Text;
property OnChange;
property OnClick;
property OnDblClick;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
end;
TfrxMemoControl = class(TfrxCustomEditControl)
private
FMemo: TMemo;
function GetLines: TStrings;
procedure SetLines(const Value: TStrings);
function GetScrollStyle: TScrollStyle;
function GetWordWrap: Boolean;
procedure SetScrollStyle(const Value: TScrollStyle);
procedure SetWordWrap(const Value: Boolean);
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property Memo: TMemo read FMemo;
published
property Color;
property Lines: TStrings read GetLines write SetLines;
property MaxLength;
property ReadOnly;
property ScrollBars: TScrollStyle read GetScrollStyle write SetScrollStyle default ssNone;
property TabStop;
property WordWrap: Boolean read GetWordWrap write SetWordWrap default True;
property OnChange;
property OnClick;
property OnDblClick;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
end;
TfrxButtonControl = class(TfrxDialogControl)
private
FButton: TButton;
function GetCancel: Boolean;
function GetDefault: Boolean;
function GetModalResult: TModalResult;
procedure SetCancel(const Value: Boolean);
procedure SetDefault(const Value: Boolean);
procedure SetModalResult(const Value: TModalResult);
{$IFDEF Delphi7}
function GetWordWrap: Boolean;
procedure SetWordWrap(const Value: Boolean);
{$ENDIF}
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property Button: TButton read FButton;
published
property Cancel: Boolean read GetCancel write SetCancel default False;
property Caption;
property Default: Boolean read GetDefault write SetDefault default False;
property ModalResult: TModalResult read GetModalResult write SetModalResult default mrNone;
{$IFDEF Delphi7}
property WordWrap: Boolean read GetWordWrap write SetWordWrap default False;
{$ENDIF}
property TabStop;
property OnClick;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
end;
TfrxCheckBoxControl = class(TfrxDialogControl)
private
FCheckBox: TCheckBox;
function GetAlignment: TAlignment;
function GetAllowGrayed: Boolean;
function GetChecked: Boolean;
function GetState: TCheckBoxState;
procedure SetAlignment(const Value: TAlignment);
procedure SetAllowGrayed(const Value: Boolean);
procedure SetChecked(const Value: Boolean);
procedure SetState(const Value: TCheckBoxState);
{$IFDEF Delphi7}
function GetWordWrap: Boolean;
procedure SetWordWrap(const Value: Boolean);
{$ENDIF}
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property CheckBox: TCheckBox read FCheckBox;
published
property Alignment: TAlignment read GetAlignment write SetAlignment
default taRightJustify;
property Caption;
property Checked: Boolean read GetChecked write SetChecked default False;
property AllowGrayed: Boolean read GetAllowGrayed write SetAllowGrayed default False;
property State: TCheckBoxState read GetState write SetState default cbUnchecked;
property TabStop;
{$IFDEF Delphi7}
property WordWrap: Boolean read GetWordWrap write SetWordWrap default False;
{$ENDIF}
property Color;
property OnClick;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
end;
TfrxRadioButtonControl = class(TfrxDialogControl)
private
FRadioButton: TRadioButton;
function GetAlignment: TAlignment;
function GetChecked: Boolean;
procedure SetAlignment(const Value: TAlignment);
procedure SetChecked(const Value: Boolean);
{$IFDEF Delphi7}
function GetWordWrap: Boolean;
procedure SetWordWrap(const Value: Boolean);
{$ENDIF}
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property RadioButton: TRadioButton read FRadioButton;
published
property Alignment: TAlignment read GetAlignment write SetAlignment
default taRightJustify;
property Caption;
property Checked: Boolean read GetChecked write SetChecked default False;
property TabStop;
{$IFDEF Delphi7}
property WordWrap: Boolean read GetWordWrap write SetWordWrap default False;
{$ENDIF}
property Color;
property OnClick;
property OnDblClick;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
end;
TfrxListBoxControl = class(TfrxDialogControl)
private
FListBox: TListBox;
function GetItems: TStrings;
procedure SetItems(const Value: TStrings);
function GetItemIndex: Integer;
procedure SetItemIndex(const Value: Integer);
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property ListBox: TListBox read FListBox;
property ItemIndex: Integer read GetItemIndex write SetItemIndex;
published
property Color;
property Items: TStrings read GetItems write SetItems;
property TabStop;
property OnClick;
property OnDblClick;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
end;
TfrxComboBoxControl = class(TfrxDialogControl)
private
FComboBox: TComboBox;
FOnChange: TfrxNotifyEvent;
function GetItemIndex: Integer;
function GetItems: TStrings;
function GetStyle: TComboBoxStyle;
function GetText: String;
procedure DoOnChange(Sender: TObject);
procedure SetItemIndex(const Value: Integer);
procedure SetItems(const Value: TStrings);
procedure SetStyle(const Value: TComboBoxStyle);
procedure SetText(const Value: String);
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property ComboBox: TComboBox read FComboBox;
published
property Color;
property Items: TStrings read GetItems write SetItems;
property Style: TComboBoxStyle read GetStyle write SetStyle default csDropDown;
property TabStop;
property Text: String read GetText write SetText;
property ItemIndex: Integer read GetItemIndex write SetItemIndex;
property OnChange: TfrxNotifyEvent read FOnChange write FOnChange;
property OnClick;
property OnDblClick;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
end;
TfrxPanelControl = class(TfrxDialogControl)
private
FPanel: TPanel;
function GetAlignment: TAlignment;
function GetBevelInner: TPanelBevel;
function GetBevelOuter: TPanelBevel;
function GetBevelWidth: Integer;
procedure SetAlignment(const Value: TAlignment);
procedure SetBevelInner(const Value: TPanelBevel);
procedure SetBevelOuter(const Value: TPanelBevel);
procedure SetBevelWidth(const Value: Integer);
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property Panel: TPanel read FPanel;
published
property Alignment: TAlignment read GetAlignment write SetAlignment default taCenter;
property BevelInner: TPanelBevel read GetBevelInner write SetBevelInner default bvNone;
property BevelOuter: TPanelBevel read GetBevelOuter write SetBevelOuter default bvRaised;
property BevelWidth: Integer read GetBevelWidth write SetBevelWidth default 1;
property Caption;
property Color;
property OnClick;
property OnDblClick;
property OnEnter;
property OnExit;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
end;
TfrxGroupBoxControl = class(TfrxDialogControl)
private
FGroupBox: TGroupBox;
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property GroupBox: TGroupBox read FGroupBox;
published
property Caption;
property Color;
property OnClick;
property OnDblClick;
property OnEnter;
property OnExit;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
end;
TfrxDateEditControl = class(TfrxDialogControl)
private
FDateEdit: TDateTimePicker;
FOnChange: TfrxNotifyEvent;
function GetDate: TDate;
function GetTime: TTime;
function GetDateFormat: TDTDateFormat;
function GetKind: TDateTimeKind;
procedure DoOnChange(Sender: TObject);
procedure SetDate(const Value: TDate);
procedure SetTime(const Value: TTime);
procedure SetDateFormat(const Value: TDTDateFormat);
procedure SetKind(const Value: TDateTimeKind);
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property DateEdit: TDateTimePicker read FDateEdit;
published
property Color;
property Date: TDate read GetDate write SetDate;
property DateFormat: TDTDateFormat read GetDateFormat write SetDateFormat
default dfShort;
property Kind: TDateTimeKind read GetKind write SetKind default dtkDate;
property TabStop;
property Time: TTime read GetTime write SetTime;
property OnChange: TfrxNotifyEvent read FOnChange write FOnChange;
property OnClick;
property OnDblClick;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
end;
TfrxImageControl = class(TfrxDialogControl)
private
FImage: TImage;
function GetAutoSize: Boolean;
function GetCenter: Boolean;
function GetPicture: TPicture;
function GetStretch: Boolean;
procedure SetAutoSize(const Value: Boolean);
procedure SetCenter(const Value: Boolean);
procedure SetPicture(const Value: TPicture);
procedure SetStretch(const Value: Boolean);
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property Image: TImage read FImage;
published
property AutoSize: Boolean read GetAutoSize write SetAutoSize default False;
property Center: Boolean read GetCenter write SetCenter default False;
property Picture: TPicture read GetPicture write SetPicture;
property Stretch: Boolean read GetStretch write SetStretch default False;
property OnClick;
property OnDblClick;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
end;
TfrxBevelControl = class(TfrxDialogControl)
private
FBevel: TBevel;
function GetBevelShape: TBevelShape;
function GetBevelStyle: TBevelStyle;
procedure SetBevelShape(const Value: TBevelShape);
procedure SetBevelStyle(const Value: TBevelStyle);
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property Bevel: TBevel read FBevel;
published
property Shape: TBevelShape read GetBevelShape write SetBevelShape default bsBox;
property Style: TBevelStyle read GetBevelStyle write SetBevelStyle default bsLowered;
end;
TfrxBitBtnControl = class(TfrxDialogControl)
private
FBitBtn: TBitBtn;
function GetGlyph: TBitmap;
function GetKind: TBitBtnKind;
function GetLayout: TButtonLayout;
function GetMargin: Integer;
function GetModalResult: TModalResult;
function GetSpacing: Integer;
procedure SetGlyph(const Value: TBitmap);
procedure SetKind(const Value: TBitBtnKind);
procedure SetLayout(const Value: TButtonLayout);
procedure SetMargin(const Value: Integer);
procedure SetModalResult(const Value: TModalResult);
procedure SetSpacing(const Value: Integer);
function GetNumGlyphs: Integer;
procedure SetNumGlyphs(const Value: Integer);
{$IFDEF Delphi7}
function GetWordWrap: Boolean;
procedure SetWordWrap(const Value: Boolean);
{$ENDIF}
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property BitBtn: TBitBtn read FBitBtn;
published
property Glyph: TBitmap read GetGlyph write SetGlyph;
property Kind: TBitBtnKind read GetKind write SetKind default bkCustom;
property Caption; // should be after Kind prop
property Layout: TButtonLayout read GetLayout write SetLayout default blGlyphLeft;
property Margin: Integer read GetMargin write SetMargin default -1;
property ModalResult: TModalResult read GetModalResult write SetModalResult default mrNone;
property NumGlyphs: Integer read GetNumGlyphs write SetNumGlyphs default 1;
property Spacing: Integer read GetSpacing write SetSpacing default 4;
{$IFDEF Delphi7}
property WordWrap: Boolean read GetWordWrap write SetWordWrap default False;
{$ENDIF}
property TabStop;
property OnClick;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
end;
TfrxSpeedButtonControl = class(TfrxDialogControl)
private
FSpeedButton: TSpeedButton;
function GetAllowAllUp: Boolean;
function GetDown: Boolean;
function GetFlat: Boolean;
function GetGlyph: TBitmap;
function GetGroupIndex: Integer;
function GetLayout: TButtonLayout;
function GetMargin: Integer;
function GetSpacing: Integer;
procedure SetAllowAllUp(const Value: Boolean);
procedure SetDown(const Value: Boolean);
procedure SetFlat(const Value: Boolean);
procedure SetGlyph(const Value: TBitmap);
procedure SetGroupIndex(const Value: Integer);
procedure SetLayout(const Value: TButtonLayout);
procedure SetMargin(const Value: Integer);
procedure SetSpacing(const Value: Integer);
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property SpeedButton: TSpeedButton read FSpeedButton;
published
property AllowAllUp: Boolean read GetAllowAllUp write SetAllowAllUp default False;
property Caption;
property Down: Boolean read GetDown write SetDown default False;
property Flat: Boolean read GetFlat write SetFlat default False;
property Glyph: TBitmap read GetGlyph write SetGlyph;
property GroupIndex: Integer read GetGroupIndex write SetGroupIndex;
property Layout: TButtonLayout read GetLayout write SetLayout default blGlyphLeft;
property Margin: Integer read GetMargin write SetMargin default -1;
property Spacing: Integer read GetSpacing write SetSpacing default 4;
property OnClick;
property OnDblClick;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
end;
TfrxMaskEditControl = class(TfrxCustomEditControl)
private
FMaskEdit: TMaskEdit;
function GetEditMask: String;
procedure SetEditMask(const Value: String);
public
constructor Create(AOwner: TComponent); override;
class function GetDescription: String; override;
property MaskEdit: TMaskEdit read FMaskEdit;
published
property Color;
property EditMask: String read GetEditMask write SetEditMask;
property MaxLength;
property ReadOnly;
property TabStop;
property Text;
property OnChange;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -