rttiinspectordemopropeditors.cpp
来自「delphi的的三方控件」· C++ 代码 · 共 73 行
CPP
73 行
//---------------------------------------------------------------------------
#pragma hdrstop
#include "RTTIInspectorDemoPropEditors.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "cxOI"
#pragma link "cxEdit"
#pragma link "cxImageComboBox"
//---------------------------------------------------------------------------
const String sNoImage = "no image";
void __fastcall TcxImageIndexProperty::AdjustInnerEditProperties(Cxedit::TcxCustomEditProperties* AProperties)
{
TcxImageComboBoxProperties *AImageComboBoxProperties =
(TcxImageComboBoxProperties*)AProperties;
TImageList *AImages = GetImages();
TcxImageComboBoxItem *AComboBoxItem;
if (AImages != NULL){
if (AImages->Height == 16)
AImageComboBoxProperties->Images = AImages;
else
AImageComboBoxProperties->LargeImages = AImages;
AImageComboBoxProperties->Items->Clear();
for (int I = 0; I < AImages->Count; I++){
AComboBoxItem = (TcxImageComboBoxItem*)AImageComboBoxProperties->Items->Add();
AComboBoxItem->ImageIndex = I;
AComboBoxItem->Value = I;
AComboBoxItem->Description = IntToStr(I);
}
}
AComboBoxItem = (TcxImageComboBoxItem*)AImageComboBoxProperties->Items->Add();
AComboBoxItem->ImageIndex = -1;
AComboBoxItem->Value = (int)-1;
AComboBoxItem->Description = sNoImage;
AImageComboBoxProperties->OnEditValueChanged = NULL;
}
//---------------------------------------------------------------------------
TImageList* __fastcall TcxImageIndexProperty::GetImages(void)
{
TImageList* Result = NULL;
if (dynamic_cast<TcxCustomEditorRowProperties *>(GetComponent(0)) != 0)
Result = ((TcxEditorRowProperties*)GetComponent(0))->Row->VerticalGrid->Images;
return Result;
}
//---------------------------------------------------------------------------
TcxPropertyAttributes __fastcall TcxImageIndexProperty::GetAttributes(void)
{
return TcxPropertyAttributes()<<ipaMultiSelect<<ipaAutoUpdate;
}
//---------------------------------------------------------------------------
void __fastcall TcxImageIndexProperty::SetValue(const AnsiString Value)
{
if (Value == sNoImage)
SetOrdValue(-1);
else
TcxIntegerProperty::SetValue(Value);
}
//---------------------------------------------------------------------------
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?