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

📄 columnssimpledemomain.cpp

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

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

#include "ColumnsSimpleDemoMain.h"
#include "AboutDemoForm.h"
#include "ColumnsSimpleDemoData.h"
#include "ColumnsSimpleDemoCars.h"
#include "ColumnsSimpleDemoCities.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 "cxLookAndFeels"
#pragma resource "*.dfm"
TColumnsSimpleDemoMainForm *ColumnsSimpleDemoMainForm;
//---------------------------------------------------------------------------
__fastcall TColumnsSimpleDemoMainForm::TColumnsSimpleDemoMainForm(TComponent* Owner)
  : TForm(Owner)
{
}
//---------------------------------------------------------------------------

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

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

void __fastcall TColumnsSimpleDemoMainForm::FormShow(TObject *Sender)
{
  tvCustomers->DataController->ClearDetails();
  if (!ColumnsSimpleDemoDataDM->tblCars->Active)
    ColumnsSimpleDemoDataDM->tblCars->Active = true;
  ColumnsSimpleDemoDataDM->tblCars->First();
  if(tvCustomers->Controller->FocusedRecord != NULL)
    tvCustomers->Controller->FocusedRecord->Expanded = true;
}
//---------------------------------------------------------------------------

void __fastcall TColumnsSimpleDemoMainForm::miEditButtonsClick(
      TObject *Sender)
{
  TcxGridDBTableView* AView = (TcxGridDBTableView*)Grid->FocusedView;
  AView->OptionsView->ShowEditButtons =
    (TcxGridShowEditButtons)((TMenuItem*)Sender)->Tag;
  ((TMenuItem*)Sender)->Checked = true;
}
//---------------------------------------------------------------------------

void __fastcall TColumnsSimpleDemoMainForm::miCellSelectClick(
      TObject *Sender)
{
  TcxGridDBTableView* AView = (TcxGridDBTableView*)Grid->FocusedView;
  AView->OptionsSelection->CellSelect = !AView->OptionsSelection->CellSelect;
  ((TMenuItem*)Sender)->Checked = AView->OptionsSelection->CellSelect;
}
//---------------------------------------------------------------------------

void __fastcall TColumnsSimpleDemoMainForm::miHideFocusRectClick(
      TObject *Sender)
{
  TcxGridDBTableView* AView = (TcxGridDBTableView*)Grid->FocusedView;
  ((TMenuItem*)Sender)->Checked = !((TMenuItem*)Sender)->Checked;
  AView->OptionsSelection->HideFocusRect = ((TMenuItem*)Sender)->Checked;
}
//---------------------------------------------------------------------------

void __fastcall TColumnsSimpleDemoMainForm::miHideSelectionClick(
      TObject *Sender)
{
  TcxGridDBTableView* AView = (TcxGridDBTableView*)Grid->FocusedView;
  ((TMenuItem*)Sender)->Checked = !((TMenuItem*)Sender)->Checked;
  AView->OptionsSelection->HideSelection = ((TMenuItem*)Sender)->Checked;
}
//---------------------------------------------------------------------------

void __fastcall TColumnsSimpleDemoMainForm::miInvertSelectClick(
      TObject *Sender)
{
  TcxGridDBTableView* AView = (TcxGridDBTableView*)Grid->FocusedView;
  ((TMenuItem*)Sender)->Checked = !((TMenuItem*)Sender)->Checked;
  AView->OptionsSelection->InvertSelect = ((TMenuItem*)Sender)->Checked;
}
//---------------------------------------------------------------------------

void __fastcall TColumnsSimpleDemoMainForm::miMultiSelectClick(
      TObject *Sender)
{
  TcxGridDBTableView* AView = (TcxGridDBTableView*)Grid->FocusedView;
  ((TMenuItem*)Sender)->Checked = !((TMenuItem*)Sender)->Checked;
  AView->OptionsSelection->MultiSelect = ((TMenuItem*)Sender)->Checked;
}
//---------------------------------------------------------------------------

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

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

void __fastcall TColumnsSimpleDemoMainForm::tvOrdersCarInfoPropertiesInitPopup(
      TObject *Sender)
{
  ColumnSimpleDemoCarsForm->bvCars->DataController->LocateByKey(
    ColumnsSimpleDemoDataDM->tblOrdersProductID->AsInteger);
}
//---------------------------------------------------------------------------

void __fastcall TColumnsSimpleDemoMainForm::tvOrdersCarInfoPropertiesCloseUp(
      TObject *Sender)
{
  ColumnsSimpleDemoDataDM->tblOrders->Edit();
  ColumnsSimpleDemoDataDM->tblOrdersProductID->Value = ColumnsSimpleDemoDataDM->tblCarsID->Value;
}
//---------------------------------------------------------------------------
void __fastcall TColumnsSimpleDemoMainForm::UpdateOptions()
{
  TcxGridDBTableView* AView = (TcxGridDBTableView*)Grid->FocusedView;
  switch (AView->OptionsView->ShowEditButtons) {
    case gsebNever: miEditButtonsNever->Checked = true; break;
    case gsebForFocusedRecord: miEditButtonsForFocusedRecord->Checked = true; break;
    case gsebAlways: miEditButtonsAlways->Checked = true; break;
  }
  miCellSelect->Checked = AView->OptionsSelection->CellSelect;
  miHideFocusRect->Checked = AView->OptionsSelection->HideFocusRect;
  miHideSelection->Checked = AView->OptionsSelection->HideSelection;
  miInvertSelect->Checked = AView->OptionsSelection->InvertSelect;
  miMultiSelect->Checked = AView->OptionsSelection->MultiSelect;
}

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

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

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


⌨️ 快捷键说明

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