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

📄 inplaceeditorsdemomain.pas

📁 胜天进销存源码,国产优秀的进销存
💻 PAS
📖 第 1 页 / 共 3 页
字号:
unit InPlaceEditorsDemoMain;

{$I ..\cxVer.inc}

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
{$IFDEF DELPHI6}
  Variants,
{$ENDIF}
  Dialogs, StdCtrls, ExtCtrls, cxClasses, cxControls, cxGraphics, cxStyles, dxBar,
  dxBarExtItems, cxBarEditItem, dxRibbon, dxRibbonForm, cxEdit,
  cxShellComboBox, cxDropDownEdit, cxBlobEdit, cxRadioGroup, cxCheckBox, cxLabel, cxTextEdit,
  cxColorComboBox, cxImageComboBox, cxFontNameComboBox, cxCheckComboBox, cxSpinEdit, cxProgressBar,
  cxTrackBar, cxTimeEdit, cxCalendar, cxCheckGroup, cxCurrencyEdit, cxCalc, cxMemo, cxRichEdit,
  cxButtonEdit, cxHyperLinkEdit, cxMaskEdit, cxImage, cxDBLookupComboBox, cxMRUEdit, Db, DBTables, EBarsUtils,
  ImgList;

const
  DemoTabsCount = 6;
  RibbonTabsCount = 9;

  TabCaptions: array [0..RibbonTabsCount - 1] of string = ('Value Editors ', 'Multi-line Text Editors', 'Text Editors',
    'Image Editors', 'Combo Boxes', 'Check Boxes & Groups', 'Styles', 'Ribbon options', 'Help');

  SToolBarDescription = 'Edit values using bar editors and see the results below';
  SDemoDescription = 'This demo illustrates the use of thirty different in-place editors from the ExpressEditors' +
  ' Library. The ExpressEditors Library is not a part of ExpressBars v6 and must be' +
  ' purchased separately. Select Help | About for more information.';
  SRibbonOptionsDescription = 'Use these options to customize Ribbon control appearance settings and toggle the Ribbon UI on/off.';
  SEditorStyles = 'Choose an in-place editor to be displayed by a TcxBarEdit item and apply different styles to the item''s caption and editor.';
  SImageEditDescription = 'Load images in bar editors and see the results below';
  SCheckBoxesDescription = SToolBarDescription;
  SMultiLineTextEdits = SToolBarDescription;
  SFileFindError = 'File %s not found';

type
  TcxBaseFrameCategory = (bfcValueEditors, bfcMultilineTextEditors, bfcTextEditors,
    bfcImageEditors, bfcComboBoxes, bfcCheckBoxes, bfcStyles, bfcRibbonOptions);

  TfrmMain = class(TdxCustomRibbonForm)
    BarManager: TdxBarManager;
    lblSelectEditorsBarHeader: TdxBarStatic;
    btnEditorStyles: TdxBarButton;
    btnTextEdit: TdxBarButton;
    btnMultilineTextEdits: TdxBarButton;
    btnValueEdits: TdxBarButton;
    tlbValueEdits: TdxBar;
    tlbMultilineTextEdits: TdxBar;
    tlbTextEdits: TdxBar;
    tlbEditorStyles: TdxBar;
    cbStyle: TcxBarEditItem;
    cbStyleEdit: TcxBarEditItem;
    cbSelectEditType: TcxBarEditItem;
    edtPreviewItem: TcxBarEditItem;
    cxStyleRepository1: TcxStyleRepository;
    Standard: TcxStyle;
    Italicized: TcxStyle;
    Colored: TcxStyle;
    Panel2: TPanel;
    tlbRibbonOptions: TdxBar;
    fncRibbonFontName: TcxBarEditItem;
    cbRibbonFont: TcxBarEditItem;
    ccbAssignedRibbonFonts: TcxBarEditItem;
    btnRibbonStyle: TdxBarButton;
    seFontSize: TcxBarEditItem;
    prbFontSize: TcxBarEditItem;
    trbFontSize: TcxBarEditItem;
    edtTime: TcxBarEditItem;
    edtDate: TcxBarEditItem;
    cbFontSize: TcxBarEditItem;
    dxBarDockControl1: TdxBarDockControl;
    Panel1: TPanel;
    clcFontColor: TcxBarEditItem;
    fncPathFontName: TcxBarEditItem;
    scbSelectPath: TcxBarEditItem;
    btnImageEditors: TdxBarButton;
    btnComboBoxes: TdxBarButton;
    btnCheckBoxes: TdxBarButton;
    edtMoney: TcxBarEditItem;
    edtCalculate: TcxBarEditItem;
    edtBlob: TcxBarEditItem;
    memMemo: TcxBarEditItem;
    reRich: TcxBarEditItem;
    beCompanyName: TcxBarEditItem;
    edtSite: TcxBarEditItem;
    lblCompanyName: TcxBarEditItem;
    mePhoneNum: TcxBarEditItem;
    edtCompanyName: TcxBarEditItem;
    tlbImageEditors: TdxBar;
    edtImage: TcxBarEditItem;
    edtBlobImage: TcxBarEditItem;
    tlbComboBoxes: TdxBar;
    imcImages: TcxBarEditItem;
    cbLookUp: TcxBarEditItem;
    edtLastPath: TcxBarEditItem;
    tlbCheckBoxes: TdxBar;
    chbMonochrome: TcxBarEditItem;
    cbSelectColor: TcxBarEditItem;
    chgSelectColor: TcxBarEditItem;
    rgSelectColor: TcxBarEditItem;
    Image1: TImage;
    Bold: TcxStyle;
    DataSource: TDataSource;
    tblContacts: TTable;
    Database: TDatabase;
    siValueEditors: TdxBarSubItem;
    btnExit: TdxBarButton;
    tlbMainMenu: TdxBar;
    siFile: TdxBarSubItem;
    siView: TdxBarSubItem;
    siHelp: TdxBarSubItem;
    siBarStyles: TdxBarSubItem;
    btnShowDescription: TdxBarButton;
    btnToolBarDescriptions: TdxBarButton;
    btnBarsHelp: TdxBarButton;
    btnDockingHelp: TdxBarButton;
    btnDownloads: TdxBarButton;
    btnRateDemo: TdxBarButton;
    btnDXOnTheWeb: TdxBarButton;
    btnSupport: TdxBarButton;
    btnProducts: TdxBarButton;
    btnMyDX: TdxBarButton;
    tlbHelp: TdxBar;
    lblDemoDescription: TLabel;
    siCheckBoxes: TdxBarSubItem;
    siTextEditors: TdxBarSubItem;
    siMultilineTextEditors: TdxBarSubItem;
    siImageEditors: TdxBarSubItem;
    siComboBoxes: TdxBarSubItem;
    tlbEditorType: TdxBar;
    tlbPreview: TdxBar;
    btnStandard: TdxBarButton;
    btnEnhanced: TdxBarButton;
    btnFlat: TdxBarButton;
    btnXP: TdxBarButton;
    btnOffice11: TdxBarButton;
    tlbTextEditorsInSubMenu: TdxBar;
    tlbValueEditorsInSubMenu: TdxBar;
    tlbMultiLineTextEditorsInSubMenu: TdxBar;
    tlbImageEditorsInSubMenu: TdxBar;
    tlbComboBoxesInSubMenu: TdxBar;
    tlbCheckBoxesInSubMenu: TdxBar;
    btnAbout: TdxBarLargeButton;
    tlbDateTimeValues: TdxBar;
    tlbScaleValues: TdxBar;
    tlbShellMRUCombo: TdxBar;
    tlbImageLookUpCombo: TdxBar;
    tlbColorScheme: TdxBar;
    btnBlueRibbonScheme: TdxBarLargeButton;
    BlackRibbonScheme: TdxBarLargeButton;
    SilverRibbonSheme: TdxBarLargeButton;
    edtPopup: TcxBarEditItem;
    memPopup: TMemo;
    tblContactsID: TAutoIncField;
    tblContactsProductID: TIntegerField;
    tblContactsFirstName: TStringField;
    tblContactsLastName: TStringField;
    tblContactsCompany: TStringField;
    tblContactsAddress: TStringField;
    tblContactsCity: TStringField;
    tblContactsState: TStringField;
    tblContactsPurchaseDate: TDateField;
    tblContactsPaymentType: TStringField;
    tblContactsPaymentAmount: TBCDField;
    tblContactsFullName: TStringField;
    ilSmall: TcxImageList;
    ilLarge: TcxImageList;
    siGroup: TdxBarSubItem;
    procedure btnEditorStylesClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure cbSelectEditTypeChange(Sender: TObject);
    procedure cbStyleChange(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure cbRibbonFontChange(Sender: TObject);
    procedure ccbAssignedRibbonFontsChange(Sender: TObject);
    procedure btnRibbonStyleClick(Sender: TObject);
    procedure seFontSizeChange(Sender: TObject);
    procedure edtCompanyNameChange(Sender: TObject);
    procedure edtMoneyChange(Sender: TObject);
    procedure clcFontColorChange(Sender: TObject);
    procedure edtSiteChange(Sender: TObject);
    procedure chgSelectColorChange(Sender: TObject);
    procedure chbMonochromeChange(Sender: TObject);
    procedure scbSelectPathChange(Sender: TObject);
    procedure edtLastPathChange(Sender: TObject);
    procedure edtImageChange(Sender: TObject);
    procedure reRichChange(Sender: TObject);
    procedure memMemoChange(Sender: TObject);
    procedure btnExitClick(Sender: TObject);
    procedure btnShowDescriptionClick(Sender: TObject);
    procedure btnToolBarDescriptionsClick(Sender: TObject);
    procedure beCompanyNamePropertiesButtonClick(Sender: TObject;
      AButtonIndex: Integer);
    procedure cbStyleEditChange(Sender: TObject);
    procedure imcImagesChange(Sender: TObject);
    procedure fncRibbonFontNameChange(Sender: TObject);
    procedure btnStandardClick(Sender: TObject);
    procedure btnBlueRibbonSchemeClick(Sender: TObject);
    procedure edtDateChange(Sender: TObject);
    procedure cbLookUpChange(Sender: TObject);
    procedure tblContactsCalcFields(DataSet: TDataSet);
    procedure edtPopupPropertiesCloseUp(Sender: TObject);
    procedure cbFontSizePropertiesValidate(Sender: TObject;
      var DisplayValue: Variant; var ErrorText: TCaption;
      var Error: Boolean);
  private
    FRibbon: TdxRibbon;
    FUpdateLock: Boolean;

    procedure CreateFrames;
    procedure RibbonTabChanged(Sender: TdxCustomRibbon);

    procedure UpdateCheckBoxesView;
    procedure UpdateComboBoxesView;
    procedure UpdateImageEditorsView;
    procedure UpdateMultilineTextEditorsView;
    procedure UpdateValueEditorsView;
    procedure UpdateTextEditView;

    procedure InitializeComboBoxes;
    procedure InitializeCheckBoxes;
    procedure InitializeImageEditors;
    procedure InitializeMultilineTextEditors;
    procedure InitializeTextEditors;
    procedure InitializeValueEditors;
    procedure InitializeEditorStyles;
    procedure InitializeRibbon;

    procedure InitializeFrames;

    procedure SynchronizeCalcValueEditors(AValue: Variant);
    procedure SynchronizeCheckGroupEditors(AValue: Variant);
    procedure SynchronizeImageEditors(AValue: Variant);
    procedure SynchronizeMultilineTextEditors(AValue: Variant);
    procedure SynchronizePathEditors(AValue: Variant);
    procedure SynchronizeRibbonFontEditors;
    procedure SynchronizeValueEditors(AValue: Variant);
    procedure SynchronizeTextEditors(AValue: Variant);

    procedure SetEditorStyle(APropName: string; AStyleSource: TcxBarEditItem);
    procedure UpdateActionsImages;
  public
    procedure HideAllFrames;
    procedure ShowAllDemoToolbars(AVisible: Boolean);
    procedure SelectNonRibbonTab(ATabIndex: Integer);
    procedure SelectTab(ATabIndex: Integer);
  end;

var
  frmMain: TfrmMain;

implementation

uses
  InPlaceEditorsDemoFrameManager, InPlaceEditorsDemoComboBoxes, InPlaceEditorsDemoImage,
  InPlaceEditorsDemoText, InPlaceEditorsDemoMultiLineText, InPlaceEditorsDemoValue,
  InPlaceEditorsDemoCheckBoxes, InPlaceEditorsDemoAbout;

{$R *.dfm}

procedure TfrmMain.btnEditorStylesClick(Sender: TObject);
begin
  SelectNonRibbonTab(TdxBarItem(Sender).Category);
end;

procedure TfrmMain.FormCreate(Sender: TObject);
begin
  dmCommonData.AboutFormClass := TfrmAbout;
  CreateFrames;

  TWinControl(dxBarDockControl1).Align := alTop;
  lblDemoDescription.Caption := SDemoDescription;
  Panel1.Align := alClient;
  Panel2.Align := alClient;

  tblContacts.Open;
  BarManager.BeginUpdate;
  try
    InitializeComboBoxes;
    InitializeCheckBoxes;
    InitializeImageEditors;
    InitializeMultilineTextEditors;
    InitializeTextEditors;
    InitializeValueEditors;
    InitializeEditorStyles;
    InitializeRibbon;
 
    InitializeFrames;

    BarManager.Style := bmsOffice11;

    UpdateActionsImages;

    BarManager.Bars[1].Visible := True;
    SelectNonRibbonTab(1);
  finally
    BarManager.EndUpdate;
  end;
end;

procedure TfrmMain.HideAllFrames;
var
  I: Integer;
begin
  for I := 0 to AFrameManager.FramesCount - 1 do
    TForm(AFrameManager[I]).Hide;
end;

procedure TfrmMain.ShowAllDemoToolbars(AVisible: Boolean);
var
  I: Integer;
begin
  BarManager.BeginUpdate;
  try
    for I := 0 to BarManager.Bars.Count - 1 do
      if BarManager.Bars[I].Tag <> 0 then
        BarManager.Bars[I].Visible := AVisible;
  finally
    BarManager.EndUpdate;
  end;
end;

procedure TfrmMain.SelectNonRibbonTab(ATabIndex: Integer);
var
  I, APos: Integer;
begin
  ShowAllDemoToolbars(False);
  APos := 0;
  BarManager.BeginUpdate;
  try
    for I := 0 to BarManager.Bars.Count - 1 do
      if  BarManager.Bars[I].Tag = ATabIndex then
      begin
        BarManager.Bars[I].Move(dxBarDockControl1, APos, 0);
        BarManager.Bars[I].Visible := True;
        Inc(APos);
      end;
  finally
    BarManager.EndUpdate;
  end;
  SelectTab(ATabIndex);
end;

procedure TfrmMain.SelectTab(ATabIndex: Integer);
begin
  HideAllFrames;
  if ATabIndex <= AFrameManager.FramesCount then
    AFrameManager[ATabIndex - 1].Show;
end;

procedure TfrmMain.RibbonTabChanged(Sender: TdxCustomRibbon);
begin
  SelectTab(Sender.ActiveTab.Tag);
end;

procedure TfrmMain.CreateFrames;

⌨️ 快捷键说明

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