📄 dbctrlseh.pas
字号:
procedure MRUListControlMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure MRUListControlResized(Sender: TObject); virtual;
procedure MRUListDropDown(Sender: TObject);
procedure Notification(AComponent: TComponent; Operation: TOperation); override;
procedure PaintWindow(DC: HDC); override;
procedure PaintRequiredState(ACanvas: TCanvas); virtual;
procedure ResetMaxLength; virtual;
procedure SetAutoSize(Value: Boolean); {$IFDEF EH_LIB_6} override; {$ELSE} virtual; {$ENDIF}
procedure SetBorderStyle(ABorderStyle: TBorderStyle);
procedure SetColor(AColor: TColor);
procedure SetControlEditMask(Value: string);
procedure SetControlReadOnly(Value: Boolean);
procedure SetDataField(const Value: string); virtual;
procedure SetDataSource(Value: TDataSource); virtual;
procedure SetFocused(Value: Boolean); virtual;
procedure SetFont(AFont: TFont);
procedure SetInplaceEditHolder(AInplaceEditHolder: TWinControl);
procedure SetOnExit(AKeyPressEvent: TNotifyEvent);
procedure SetOnKeyPress(AKeyPressEvent: TKeyPressEvent);
procedure SetVariantValue(const VariantValue: Variant); virtual;
procedure UpdateControlReadOnly; virtual;
procedure UpdateEditButtonControlList;
procedure UpdateEditButtonControlsState;
procedure UpdateHeight; virtual;
procedure UpdateHintProcessing; virtual;
procedure UpdateImageIndex; virtual;
procedure UserChange; virtual;
procedure WndProc(var Message: TMessage); override;
property AssignedValues: TDBEditEhValues read FAssignedValues;
{$IFNDEF EH_LIB_6}
property AutoSize: Boolean read GetAutoSize write SetAutoSize default True;
{$ENDIF}
property Canvas: TCanvas read GetCanvas;
property EditButton: TEditButtonEh read FEditButton write SetEditButton;
property EditButtons: TEditButtonsEh read FEditButtons write SetEditButtons;
property EditImage: TEditImageEh read FEditImage write SetEditImage;
property HighlightRequired: Boolean read FHighlightRequired write FHighlightRequired default False;
property Images: TCustomImageList read GetImages write SetImages;
property MRUList: TMRUListEh read FMRUList write SetMRUList;
property MRUListControl: TWinControl read GetMRUListControl;
property PasswordChar: Char read GetPasswordChar write SetPasswordChar default #0;
property WantReturns: Boolean read FWantReturns write FWantReturns default False;
property WantTabs: Boolean read FWantTabs write FWantTabs default False;
property WordWrap: Boolean read FWordWrap write SetWordWrap default False;
property OnButtonClick: TButtonClickEventEh read FOnButtonClick write FOnButtonClick;
property OnButtonDown: TButtonDownEventEh read FOnButtonDown write FOnButtonDown;
property OnCheckDrawRequiredState: TOnCheckDrawRequiredStateEventEh read FOnCheckDrawRequiredState write FOnCheckDrawRequiredState;
property OnGetImageIndex: TGetImageIndexEventEh read FOnGetImageIndex write SetOnGetImageIndex;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
function ExecuteAction(Action: TBasicAction): Boolean; override;
function GetCompleteKeyPress: String;
function UpdateAction(Action: TBasicAction): Boolean; override;
function UseRightToLeftAlignment: Boolean; override;
procedure Clear; override;
procedure DefaultHandler(var Message); override;
procedure Deselect;
procedure Hide;
procedure Move(const Loc: TRect);
procedure Reset; override;
procedure SetFocus; override;
procedure Undo;
procedure UpdateData; virtual;
procedure UpdateLoc(const Loc: TRect);
property Alignment: TAlignment read GetAlignment write SetAlignment stored IsAlignmentStored;
property AlwaysShowBorder: Boolean read FAlwaysShowBorder write SetAlwaysShowBorder default False;
property DataField: String read GetDataField write SetDataField;
property DataSource: TDataSource read GetDataSource write SetDataSource;
property DisplayTextForPaintCopy: String read GetDisplayTextForPaintCopy;
property EditMask: String read GetEditMask write SetEditMask stored False;
property Field: TField read GetField;
property Flat: Boolean read FFlat write SetFlat default False;
property ReadOnly: Boolean read GetReadOnly write SetReadOnly default False;
property ShowHint: Boolean read GetShowHint write SetShowHint default False;
property Text: String read GetText write SetText stored IsTextStored;
property Tooltips: Boolean read FTooltips write SetTooltips default False;
property Value: Variant read GetValue write SetValue stored IsValueStored;
property Visible: Boolean read GetVisible write SetVisible;
property OnUpdateData: TUpdateDataEventEh read FOnUpdateData write FOnUpdateData;
end;
TDBEditEh = class(TCustomDBEditEh)
published
property Alignment;
property AlwaysShowBorder;
property Anchors;
property AutoSelect;
property AutoSize;
property BiDiMode;
property BorderStyle;
property CharCase;
property Color;
property Constraints;
property Ctl3D;
property DataField;
property DataSource;
property DragCursor;
property DragKind;
property DragMode;
property EditButtons;
property Enabled;
property EditMask;
property Font;
property Flat;
property HighlightRequired;
property Images;
property ImeMode;
property ImeName;
property MaxLength;
property MRUList;
property ParentBiDiMode;
property ParentColor;
property ParentCtl3D;
property ParentFont;
property ParentShowHint;
property PasswordChar;
property PopupMenu;
property ReadOnly;
property ShowHint;
property TabOrder;
property TabStop;
property Text;
property Tooltips;
property Visible;
property WantTabs;
property WantReturns;
property WordWrap;
property OnChange;
property OnCheckDrawRequiredState;
property OnClick;
{$IFDEF EH_LIB_5}
property OnContextPopup;
{$ENDIF}
property OnDblClick;
property OnDragDrop;
property OnDragOver;
property OnEndDock;
property OnEndDrag;
property OnEnter;
property OnExit;
property OnGetImageIndex;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
property OnUpdateData;
property OnStartDock;
property OnStartDrag;
end;
{ TCustomDBDateTimeEditEh }
TDateTimeKindEh = (dtkDateEh, dtkTimeEh, dtkDateTimeEh, dtkCustomEh);
TElementMaskPosEh = record
Pos, Length: Integer;
Present: Boolean;
end;
TDateTimeElementsMaskPosEh = record
Year: TElementMaskPosEh;
Month: TElementMaskPosEh;
Day: TElementMaskPosEh;
Hour: TElementMaskPosEh;
Min: TElementMaskPosEh;
Sec: TElementMaskPosEh;
end;
TCustomDBDateTimeEditEh = class(TCustomDBEditEh)
private
FCalendarVisible: Boolean;
FDropDownCalendar: TWinControl;
FEditValidating: Boolean;
FInternalTextSetting: Boolean;
FKind: TDateTimeKindEh;
FValue: Variant;
FOnCloseUp: TCloseUpEventEh;
FOnDropDown: TNotifyEvent;
FEditFormat: String;
FDateTimeFormat: String;
function GetDropDownCalendar: TWinControl;
function IsEditFormatStored: Boolean;
function IsKindStored: Boolean;
procedure CMCancelMode(var Message: TCMCancelMode); message CM_CANCELMODE;
procedure CMEnter(var Message: TCMEnter); message CM_ENTER;
procedure CMMouseWheel(var Message: TCMMouseWheel); message CM_MOUSEWHEEL;
procedure CMWantSpecialKey(var Message: TCMWantSpecialKey); message CM_WANTSPECIALKEY;
procedure ReadEditFormat(Reader: TReader);
procedure SetEditFormat(const Value: String);
procedure SetKind(const Value: TDateTimeKindEh);
procedure UpdateValueFromText;
procedure WMGetDlgCode(var Message: TWMGetDlgCode); message WM_GETDLGCODE;
procedure WMKillFocus(var Message: TWMKillFocus); message WM_KILLFOCUS;
procedure WriteEditFormat(Writer: TWriter);
protected
FDateTimeMaskPos: TDateTimeElementsMaskPosEh;
FFourDigitYear: Boolean;
function CreateEditButton: TEditButtonEh; override;
function DoMouseWheelDown(Shift: TShiftState; MousePos: TPoint): Boolean; override;
function DoMouseWheelUp(Shift: TShiftState; MousePos: TPoint): Boolean; override;
function GetDisplayTextForPaintCopy: String; override;
function GetVariantValue: Variant; override;
procedure ButtonDown(IsDownButton: Boolean); override;
procedure Change; override;
procedure DataChanged; override;
procedure DefineProperties(Filer: TFiler); override;
procedure EditButtonMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); override;
procedure FilterMRUItem(AText: String; var Accept: Boolean); override;
procedure IncrementItemAtCurPos(IsIncrease: Boolean);
procedure InternalSetControlText(AText: String);
procedure InternalSetText(AText: String); override;
procedure InternalSetValue(AValue: Variant); override;
procedure InternalUpdatePostData; override;
procedure KeyDown(var Key: Word; Shift: TShiftState); override;
procedure KeyPress(var Key: Char); override;
procedure UpdateFourDigitYear; virtual;
procedure WndProc(var Message: TMessage); override;
property DropDownCalendar: TWinControl read GetDropDownCalendar;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
function DateTimeFormat: String;
procedure CloseUp(Accept: Boolean); override;
procedure DropDown; override;
procedure UpdateMask; virtual;
procedure ValidateEdit; override;
property CalendarVisible: Boolean read FCalendarVisible;
property EditFormat: String read FEditFormat write SetEditFormat stored False; //IsEditFormatStored;
property Kind: TDateTimeKindEh read FKind write SetKind stored IsKindStored;
property OnCloseUp: TCloseUpEventEh read FOnCloseUp write FOnCloseUp;
property OnDropDown: TNotifyEvent read FOnDropDown write FOnDropDown;
end;
{ TDBDateTimeEditEh }
TDBDateTimeEditEh = class(TCustomDBDateTimeEditEh)
published
property Alignment;
property AlwaysShowBorder;
property Anchors;
property AutoSelect;
property AutoSize;
property BiDiMode;
property BorderStyle;
property Color;
property Constraints;
property Ctl3D;
property DataField;
property DataSource;
property DragCursor;
property DragKind;
property DragMode;
property Enabled;
property EditButton;
property EditButtons;
property EditFormat;
property Font;
property Flat;
property HighlightRequired;
property Images;
property ImeMode;
property ImeName;
property Kind;
property MRUList;
property ParentBiDiMode;
property ParentColor;
property ParentCtl3D;
property ParentFont;
property ParentShowHint;
property PopupMenu;
property ReadOnly;
property ShowHint;
property TabOrder;
property TabStop;
property Tooltips;
property Value;
property Visible;
property OnButtonClick;
property OnButtonDown;
property OnChange;
property OnCheckDrawRequiredState;
property OnClick;
property OnCloseUp;
{$IFDEF EH_LIB_5}
property OnContextPopup;
{$ENDIF}
property OnDblClick;
property OnDragDrop;
property OnDragOver;
property OnDropDown;
property OnEndDock;
property OnEndDrag;
property OnEnter;
property OnExit;
property OnGetImageIndex;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
property OnUpdateData;
property OnStartDock;
property OnStartDrag;
end;
{ TDropDownBoxEh }
TDropDownBoxEh = class(TPersistent)
private
FAlign: TDropDownAlign;
FAutoDrop: Boolean;
FRows: Integer;
FSizable: Boolean;
FWidth: Integer;
public
procedure Assign(Source: TPersistent); override;
published
property Align: TDropDownAlign read FAlign write FAlign default daLeft;
property AutoDrop: Boolean read FAutoDrop write FAutoDrop default False;
property Rows: Integer read FRows write FRows default 7;
property Sizable: Boolean read FSizable write FSizable default False;
property Width: Integer read FWidth write FWidth default 0;
end;
{ TCustomDBComboBoxEh }
TCustomDBComboBoxEh = class(TCustomDBEditEh)
private
FDropDownBox: TDropDownBoxEh;
FItemIndex: Integer;
FItems: TStrings;
FKeyItems: TStrings;
FListVisible: Boolean;
FOnNotInList: TNotInListEventEh;
FPopupListbox: TWinControl;
FOnCloseUp: TCloseUpEventEh;
FOnClosingUp: TAcceptEventEh;
FOnDropDown: TNotifyEvent;
FOnGetItemImageIndex: TListGetImageIndexEventEh;
FOnGetItemsList: TNotifyEvent;
FPopupListboxClass: TWinControlClass;
function GetImages: TCustomImageList;
procedure CMCancelMode(var Message: TCMCancelMode); message CM_CANCELMODE;
procedure CMMouseWheel(var Message: TCMMouseWheel); message CM_MOUSEWHEEL;
procedure CMWantSpecialKey(var Message: TCMWantSpecialKey); message CM_WANTSPECIALKEY;
procedure ItemsChanged(Sender: TObject);
procedure KeyItemsChanged(Sender: TObject);
procedure ListMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure SetDropDownBox(const Value: TDropDownBoxEh);
procedure SetImages(const Value: TCustomImageList);
procedure SetItemIndex(const Value: Integer);
procedure SetItems(const Value: TStrings);
procedure SetKeyItems(const Value: TStrings);
procedure WMChar(var Message: TWMChar); message WM_CHAR;
procedure WMGetDlgCode(var Message: TWMGetDlgCode); message WM_GETDLGCODE;
procedure WMKillFocus(var Message: TWMKillFocus); message WM_KILLFOCUS;
procedure WMPaste(var Message: TMessage); message WM_PASTE;
procedure WMSetCursor(var Message: TWMSetCursor); message WM_SETCURSOR;
protected
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -