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

📄 jvdyncontrolenginedevexpcxdb.pas

📁 East make Tray Icon in delphi
💻 PAS
📖 第 1 页 / 共 5 页
字号:
procedure TJvDynControlCxDBText.ControlSetOnClick(Value: TNotifyEvent);
begin
end;
    
procedure TJvDynControlCxDBText.ControlSetDataSource(Value: TDataSource);
begin
  Databinding.DataSource := Value;
end;

function TJvDynControlCxDBText.ControlGetDataSource: TDataSource;
begin
  Result := DataBinding.DataSource;
end;

procedure TJvDynControlCxDBText.ControlSetDataField(const Value: string);
begin
  Databinding.DataField := Value;
end;

function TJvDynControlCxDBText.ControlGetDataField: string;
begin
  Result := Databinding.DataField;
end;

procedure TJvDynControlCxDBText.ControlSetCxProperties(Value: TCxDynControlWrapper);
begin
  Style.LookAndFeel.Assign(Value.LookAndFeel);
  Style.StyleController := Value.StyleController;
end;

//=== { TJvDynControlCxDBNavigator } =========================================

procedure TJvDynControlCxDBNavigator.ControlSetDefaultProperties;
begin
end;

procedure TJvDynControlCxDBNavigator.ControlSetCaption(const Value: string);
begin
end;

procedure TJvDynControlCxDBNavigator.ControlSetTabOrder(Value: Integer);
begin
  TabOrder := Value;
end;

procedure TJvDynControlCxDBNavigator.ControlSetHint(const Value: string);
begin
  Hint := Value;
end;

procedure TJvDynControlCxDBNavigator.ControlSetOnEnter(Value: TNotifyEvent);
begin
  OnEnter := Value;
end;

procedure TJvDynControlCxDBNavigator.ControlSetOnExit(Value: TNotifyEvent);
begin
  OnExit := Value;
end;

procedure TJvDynControlCxDBNavigator.ControlSetOnClick(Value: TNotifyEvent);
begin
end;

procedure TJvDynControlCxDBNavigator.ControlSetDataSource(Value: TDataSource);
begin
  DataSource := Value;
end;

function TJvDynControlCxDBNavigator.ControlGetDataSource: TDataSource;
begin
  Result := DataSource;
end;

procedure TJvDynControlCxDBNavigator.ControlSetDataField(const Value: string);
begin
end;

function TJvDynControlCxDBNavigator.ControlGetDataField: string;
begin
  Result := '';
end;

procedure TJvDynControlCxDBNavigator.ControlSetCxProperties(Value: TCxDynControlWrapper);
begin
  LookAndFeel.Assign(Value.LookAndFeel);
  //Style.StyleController := Value.StyleController;
end;

//=== { TJvDynControlCxDBDateTimeEdit } ======================================

procedure TJvDynControlCxDBDateTimeEdit.ControlSetDefaultProperties;
begin
  Properties.ShowTime := True;
  Properties.SaveTime := False;
//  Properties.InputKind := ikStandard;
end;

procedure TJvDynControlCxDBDateTimeEdit.ControlSetReadOnly(Value: Boolean);
begin
  Properties.ReadOnly := Value;
end;

procedure TJvDynControlCxDBDateTimeEdit.ControlSetCaption(const Value: string);
begin
end;

procedure TJvDynControlCxDBDateTimeEdit.ControlSetTabOrder(Value: Integer);
begin
  TabOrder := Value;
end;

procedure TJvDynControlCxDBDateTimeEdit.ControlSetOnEnter(Value: TNotifyEvent);
begin
  OnEnter := Value;
end;

procedure TJvDynControlCxDBDateTimeEdit.ControlSetOnExit(Value: TNotifyEvent);
begin
  OnExit := Value;
end;

procedure TJvDynControlCxDBDateTimeEdit.ControlSetOnChange(Value: TNotifyEvent);
begin
  Properties.OnChange := Value;
end;

procedure TJvDynControlCxDBDateTimeEdit.ControlSetOnClick(Value: TNotifyEvent);
begin
end;

procedure TJvDynControlCxDBDateTimeEdit.ControlSetHint(const Value: string);
begin
  Hint := Value;
end;

procedure TJvDynControlCxDBDateTimeEdit.ControlSetValue(Value: Variant);
begin
  Text := Value;
end;

function TJvDynControlCxDBDateTimeEdit.ControlGetValue: Variant;
begin
  Result := Text;
end;

// IJvDynControlDate
procedure TJvDynControlCxDBDateTimeEdit.ControlSetMinDate(Value: TDateTime);
begin
  Properties.MinDate := Value;
end;

procedure TJvDynControlCxDBDateTimeEdit.ControlSetMaxDate(Value: TDateTime);
begin
  Properties.MaxDate := Value;
end;

procedure TJvDynControlCxDBDateTimeEdit.ControlSetFormat(const Value: string);
begin
//  Format := Value;
end;

procedure TJvDynControlCxDBDateTimeEdit.ControlSetCxProperties(Value: TCxDynControlWrapper);
begin
  Style.LookAndFeel.Assign(Value.LookAndFeel);
  Style.StyleController := Value.StyleController;
end;

procedure TJvDynControlCxDBDateTimeEdit.ControlSetDataSource(Value: TDataSource);
begin
  Databinding.DataSource := Value;
end;

function TJvDynControlCxDBDateTimeEdit.ControlGetDataSource: TDataSource;
begin
  Result := Databinding.DataSource;
end;

procedure TJvDynControlCxDBDateTimeEdit.ControlSetDataField(const Value: string);
begin
  Databinding.DataField := Value;
end;

function TJvDynControlCxDBDateTimeEdit.ControlGetDataField: string;
begin
  Result := Databinding.DataField;
end;

//=== { TJvDynControlCxDBDateEdit } ==========================================

procedure TJvDynControlCxDBDateEdit.ControlSetDefaultProperties;
begin
  Properties.ShowTime := False;
  Properties.SaveTime := False;
//  Properties.InputKind := ikStandard;
end;

procedure TJvDynControlCxDBDateEdit.ControlSetReadOnly(Value: Boolean);
begin
  Properties.ReadOnly := Value;
end;

procedure TJvDynControlCxDBDateEdit.ControlSetCaption(const Value: string);
begin
end;

procedure TJvDynControlCxDBDateEdit.ControlSetTabOrder(Value: Integer);
begin
  TabOrder := Value;
end;

procedure TJvDynControlCxDBDateEdit.ControlSetOnEnter(Value: TNotifyEvent);
begin
  OnEnter := Value;
end;

procedure TJvDynControlCxDBDateEdit.ControlSetOnExit(Value: TNotifyEvent);
begin
  OnExit := Value;
end;

procedure TJvDynControlCxDBDateEdit.ControlSetOnChange(Value: TNotifyEvent);
begin
  Properties.OnChange := Value;
end;

procedure TJvDynControlCxDBDateEdit.ControlSetOnClick(Value: TNotifyEvent);
begin
end;

procedure TJvDynControlCxDBDateEdit.ControlSetHint(const Value: string);
begin
  Hint := Value;
end;

procedure TJvDynControlCxDBDateEdit.ControlSetValue(Value: Variant);
begin
  Text := Value;
end;

function TJvDynControlCxDBDateEdit.ControlGetValue: Variant;
begin
  Result := Text;
end;

// IJvDynControlDate
procedure TJvDynControlCxDBDateEdit.ControlSetMinDate(Value: TDateTime);
begin
  Properties.MinDate := Value;
end;

procedure TJvDynControlCxDBDateEdit.ControlSetMaxDate(Value: TDateTime);
begin
  Properties.MaxDate := Value;
end;

procedure TJvDynControlCxDBDateEdit.ControlSetFormat(const Value: string);
begin
//  Format := Value;
end;

procedure TJvDynControlCxDBDateEdit.ControlSetCxProperties(Value: TCxDynControlWrapper);
begin
  Style.LookAndFeel.Assign(Value.LookAndFeel);
  Style.StyleController := Value.StyleController;
end;

procedure TJvDynControlCxDBDateEdit.ControlSetDataSource(Value: TDataSource);
begin
  Databinding.DataSource := Value;
end;

function TJvDynControlCxDBDateEdit.ControlGetDataSource: TDataSource;
begin
  Result := Databinding.DataSource;
end;

procedure TJvDynControlCxDBDateEdit.ControlSetDataField(const Value: string);
begin
  Databinding.DataField := Value;
end;

function TJvDynControlCxDBDateEdit.ControlGetDataField: string;
begin
  Result := Databinding.DataField;
end;

//=== { TJvDynControlCxDBTimeEdit } ==========================================

procedure TJvDynControlCxDBTimeEdit.ControlSetDefaultProperties;
begin
  Properties.ShowDate := False;
  Properties.UseCtrlIncrement := True;
end;

procedure TJvDynControlCxDBTimeEdit.ControlSetReadOnly(Value: Boolean);
begin
  Properties.ReadOnly := Value;
end;

procedure TJvDynControlCxDBTimeEdit.ControlSetCaption(const Value: string);
begin
end;

procedure TJvDynControlCxDBTimeEdit.ControlSetTabOrder(Value: Integer);
begin
  TabOrder := Value;
end;

procedure TJvDynControlCxDBTimeEdit.ControlSetOnEnter(Value: TNotifyEvent);
begin
  OnEnter := Value;
end;

procedure TJvDynControlCxDBTimeEdit.ControlSetOnExit(Value: TNotifyEvent);
begin
  OnExit := Value;
end;

procedure TJvDynControlCxDBTimeEdit.ControlSetOnChange(Value: TNotifyEvent);
begin
  Properties.OnChange := Value;
end;

procedure TJvDynControlCxDBTimeEdit.ControlSetOnClick(Value: TNotifyEvent);
begin
end;

procedure TJvDynControlCxDBTimeEdit.ControlSetHint(const Value: string);
begin
  Hint := Value;
end;

procedure TJvDynControlCxDBTimeEdit.ControlSetValue(Value: Variant);
begin
  Text := Value;
end;

function TJvDynControlCxDBTimeEdit.ControlGetValue: Variant;
begin
  Result := Text;
end;

procedure TJvDynControlCxDBTimeEdit.ControlSetCxProperties(Value: TCxDynControlWrapper);
begin
  Style.LookAndFeel.Assign(Value.LookAndFeel);
  Style.StyleController := Value.StyleController;
end;

procedure TJvDynControlCxDBTimeEdit.ControlSetFormat(const Value: string);
begin
//  Properties.Format := Value;
  Properties.Use24HourFormat := (Pos('H', Value) > 0);
  if Pos('s', Value) > 0 then
    Properties.TimeFormat := tfHourMinSec
  else
  if Pos('m', Value) > 0 then
    Properties.TimeFormat := tfHourMin
  else
    Properties.TimeFormat := tfHour;
end;

procedure TJvDynControlCxDBTimeEdit.ControlSetDataSource(Value: TDataSource);
begin
  Databinding.DataSource := Value;
end;

function TJvDynControlCxDBTimeEdit.ControlGetDataSource: TDataSource;
begin
  Result := Databinding.DataSource;
end;

procedure TJvDynControlCxDBTimeEdit.ControlSetDataField(const Value: string);
begin
  Databinding.DataField := Value;
end;

function TJvDynControlCxDBTimeEdit.ControlGetDataField: string;
begin
  Result := Databinding.DataField;
end;

//=== { TJvDynControlEngineDevExpCxDB } ======================================

function DynControlEngineCxDB: TJvDynControlEngineDB;
begin
  Result := IntDynControlEngineCxDB;
end;

procedure SetDefaultDynControlEngineDBDevExp;
begin
  SetDefaultDynControlEngineDB(DynControlEngineCxDB);
end;

type
  TJvDynControlEngineDevExpCxDB = class(TJvDynControlEngineDB)
  private
    FCxProperties: TCxDynControlWrapper;
  protected
    procedure SetcxProperties(Value: TCxDynControlWrapper);
    procedure RegisterControls; override;
    procedure TransferGridItemToControl(AGridItem: TcxCustomGridTableItem;
      ADataSource: TDataSource; AControl: TWinControl; AOptions: TJvCreateDBFieldsOnControlOptions);
  public
    constructor Create; override;
    destructor Destroy; override;
    function CreateControlClass(AControlClass: TControlClass; AOwner: TComponent; AParentControl: TWinControl; AControlName: string): TControl; override;
    function CreateControlsFromCxGridViewOnControl(AGridView: TcxCustomGridTableView;
      AControl: TWinControl; AOptions: TJvCreateDBFieldsOnControlOptions): Boolean;
    function CreateControlsFromDataComponentOnControl(ADataComponent: TComponent;
      AControl: TWinControl; AOptions: TJvCreateDBFieldsOnControlOptions): Boolean; override;
    function GetDataSourceFromDataComponent(ADataComponent: TComponent): TDataSource; override;
  published
    property CxProperties: TCxDynControlWrapper read FCxProperties write FCxProperties;
  end;

constructor TJvDynControlEngineDevExpCxDB.Create;
begin
  inherited Create;
  FCxProperties := TCxDynControlWrapper.Create;
end;

destructor TJvDynControlEngineDevExpCxDB.Destroy;
begin
  FreeAndNil(FCxProperties);
  inherited Destroy;
end;

procedure TJvDynControlEngineDevExpCxDB.SetcxProperties(Value: TCxDynControlWrapper);
begin
  if Value is TCxDynControlWrapper then
    FCxProperties.LookAndFeel.Assign(Value.LookAndFeel);
end;

function TJvDynControlEngineDevExpCxDB.CreateControlClass(AControlClass: TControlClass; AOwner: TComponent; AParentControl: TWinControl; AControlName: string): TControl;
var
  C: TControl;
begin
  C := inherited CreateControlClass(AControlClass, AOwner, AParentControl, AControlName);
  if Supports(C, IJvDynControlDevExpCx) then
    with C as IJvDynControlDevExpCx do
      ControlSetCxProperties(cxProperties);
  Result := C;
end;

procedure TJvDynControlEngineDevExpCxDB.RegisterControls;
begin
  RegisterControlType(jctDBText, TJvDynControlCxDBText);
  RegisterControlType(jctDBEdit, TJvDynControlCxDBEdit);
  RegisterControlType(jctDBImage, TJvDynControlCxDBImage);
  RegisterControlType(jctDBCheckBox, TJvDynControlCxDBCheckBox);
  RegisterControlType(jctDBComboBox, TJvDynControlCxDBComboBox);
  RegisterControlType(jctDBListBox, TJvDynControlCxDBListBox);
  RegisterControlType(jctDBRadioGroup, TJvDynControlCxDBRadioGroup);
  RegisterControlType(jctDBDateTimeEdit, TJvDynControlCxDBDateTimeEdit);
  RegisterControlType(jctDBTimeEdit, TJvDynC

⌨️ 快捷键说明

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