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

📄 editorsinplacedemomain.cpp

📁 DevExpress ExpressQuantumGrid Suite v5.9 Full Source
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#include "shellapi.hpp"
#pragma hdrstop

#include "EditorsInPlaceDemoMain.h"
#include "EditorsInPlaceDemoData.h"
#include "AboutDemoForm.h"
#include "EditorsInPlaceDemoCities.h"
#include "EditorsInPlaceDemoCars.h"

//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "cxClasses"
#pragma link "cxControls"
#pragma link "cxCustomData"
#pragma link "cxData"
#pragma link "cxDBData"
#pragma link "cxEdit"
#pragma link "cxFilter"
#pragma link "cxGraphics"
#pragma link "cxGrid"
#pragma link "cxGridCustomTableView"
#pragma link "cxGridCustomView"
#pragma link "cxGridDBTableView"
#pragma link "cxGridLevel"
#pragma link "cxGridTableView"
#pragma link "cxStyles"
#pragma link "cxGridCardView"
#pragma link "cxGridDBCardView"
#pragma link "cxLookAndFeels"
#pragma resource "*.dfm"
TEditorsInPlaceDemoMainForm *EditorsInPlaceDemoMainForm;
//---------------------------------------------------------------------------
__fastcall TEditorsInPlaceDemoMainForm::TEditorsInPlaceDemoMainForm(TComponent* Owner)
  : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TEditorsInPlaceDemoMainForm::miAboutClick(TObject *Sender)
{
  ShowAboutDemoForm();
}
//---------------------------------------------------------------------------

void __fastcall TEditorsInPlaceDemoMainForm::miExitClick(TObject *Sender)
{
  Close();
}
//---------------------------------------------------------------------------

void __fastcall TEditorsInPlaceDemoMainForm::FormShow(TObject *Sender)
{
  ((TcxPopupEditPropertiesAccess*)cvCarsInfo->Properties)->ImmediatePopup = true;
}
//---------------------------------------------------------------------------

void __fastcall TEditorsInPlaceDemoMainForm::cvCustomersStatePropertiesButtonClick(TObject *Sender)
{
  MessageDlg("Button click event handler", mtInformation, TMsgDlgButtons()<<mbOK, 0);
}
//---------------------------------------------------------------------------

void __fastcall TEditorsInPlaceDemoMainForm::cvCustomersCityPropertiesButtonClick(TObject *Sender,
    int AButtonIndex)
{
  switch (AButtonIndex){
    case 0:
      if (EditorsInPlaceDemoCitiesForm->ShowModal() == mrOk){
        EditorsInPlaceDemoDataDM->tblCustomers->Edit();
        EditorsInPlaceDemoDataDM->tblCustomersCity->Value = EditorsInPlaceDemoCitiesForm->Value;
      }
      break;
    case 1:
      ShellExecute(Handle, PChar("OPEN"), PChar("http://www.usacitiesonline.com/"), NULL, NULL, SW_SHOWMAXIMIZED);
  }
}
//---------------------------------------------------------------------------

void __fastcall TEditorsInPlaceDemoMainForm::GridFocusedViewChanged(TcxCustomGrid *Sender,
    TcxCustomGridView *APrevFocusedView, TcxCustomGridView *AFocusedView)
{
  UpdateOptions();
}
//---------------------------------------------------------------------------

void __fastcall TEditorsInPlaceDemoMainForm::miEditButtonsClick(TObject *Sender)
{
  if (!((TMenuItem*)Sender)->Checked) {
    TcxGridDBCardView *AView = (TcxGridDBCardView*)Grid->FocusedView;
    switch (((TMenuItem*)Sender)->Tag){
      case 0:
        AView->OptionsView->ShowEditButtons = gsebNever;
        break;
      case 1:
        AView->OptionsView->ShowEditButtons = gsebForFocusedRecord;
        break;
      case 2:
        AView->OptionsView->ShowEditButtons = gsebAlways;
    }
    ((TMenuItem*)Sender)->Checked = true;
  }
}
//---------------------------------------------------------------------------

void __fastcall TEditorsInPlaceDemoMainForm::cvCarsCustomDrawCell(TcxCustomGridTableView *Sender,
    TcxCanvas *ACanvas, TcxGridTableDataCellViewInfo *AViewInfo,
    bool &ADone)
{
  if ((AViewInfo->Item->Index == cvCarsInfo->Index) &&
    (dynamic_cast< TcxGridCardRowDataViewInfo* >(AViewInfo) != 0)){
    ACanvas->Canvas->Brush->Style = bsSolid;
    ACanvas->Canvas->Brush->Color = (TColor)0x00F7EAD9;
    ACanvas->Canvas->FillRect(AViewInfo->Bounds);
    SetBkMode(ACanvas->Handle, TRANSPARENT);
    ACanvas->Font->Color = clBlack;
    ACanvas->Canvas->TextOut(AViewInfo->Bounds.Left, AViewInfo->Bounds.Top, "<click here and view dropdown window>");
    ADone = true;
  }
}
//---------------------------------------------------------------------------

void TEditorsInPlaceDemoMainForm::UpdateOptions()
{
  switch (((TcxGridDBCardView*)Grid->FocusedView)->OptionsView->ShowEditButtons){
  case gsebNever:
    miEditButtonsNever->Checked = true;
    break;
  case gsebForFocusedRecord:
    miEditButtonsForFocusedRecord->Checked = true;
    break;
  case gsebAlways:
    miEditButtonsAlways->Checked = true;
 }
}
//---------------------------------------------------------------------------

void __fastcall TEditorsInPlaceDemoMainForm::miNativeStyleClick(
      TObject *Sender)
{
  LookAndFeelController->NativeStyle = !LookAndFeelController->NativeStyle;
  ((TMenuItem*)Sender)->Checked = LookAndFeelController->NativeStyle;
}
//---------------------------------------------------------------------------



void __fastcall TEditorsInPlaceDemoMainForm::miLookAndFeelClick(
      TObject *Sender)
{
  LookAndFeelController->Kind = (TcxLookAndFeelKind)((TMenuItem*)Sender)->MenuIndex;
  ((TMenuItem*)Sender)->Checked = true;
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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