RAD Studio VCL Reference
|
Adds a string to the list, and associates an object with the string.
function AddObject(const S: string; AObject: TObject): Integer; virtual;
virtual __fastcall int AddObject(const AnsiString S, TObject * AObject);
Call AddObject to add a string and its associated object to the list. AddObject returns the index of the new string and object.
C++ Examples:
/* This example requires a TPageControl already on the form. Also, you must add pages to the TPageControl by right clicking and selecting New Page. The example code will allow the user to select the ActivePage property through selection of a ComboBox item. During the form create, the Combo Box control is loaded with the names of each of the tabs, as well as the instance pointers to the corresponding tab. When the user selects the Combo Box item, the associated TTabSheet object contained in the Combo Box Objects array is used to set the ActivePage property. Select the Lines property of the TRichEdit to enter a string. Select the string before justifying. */ void __fastcall TForm1::ComboBox1Change(TObject *Sender) { TComboBox *pCB = dynamic_cast<TComboBox *>(Sender); if (pCB) PageControl1->ActivePage = dynamic_cast<TTabSheet *>(pCB->Items->Objects[pCB->ItemIndex]); } void __fastcall TForm1::FormCreate(TObject *Sender) { const TColor colorPalette[12] = { clRed, clGreen, clYellow, clBlue, clWhite, clFuchsia, clTeal, clNavy, clMaroon, clLime, clOlive, clPurple}; for (int i = 0; i < PageControl1->PageCount; i++) { PageControl1->Pages[i]->Brush->Color = colorPalette[i]; ComboBox1->Items->AddObject(PageControl1->Pages[i]->Name, PageControl1->Pages[i]); } ComboBox1->ItemIndex = 0; PageControl1->ActivePage = dynamic_cast<TTabSheet *>(ComboBox1->Items->Objects[ComboBox1->ItemIndex]); }
/* This example requires a TListView, a TImageList and a TComboBox. You will need to double click the image list and add several images to the image list prior to running the project. During the form’s OnCreate event handler, items for the List View control are created for each image in the Image List and the ImageIndex is assigned the number of the image within the ImageList. Two columns are created so that when ViewStyle is vsReport, you will have columns to view. Also within the form’s OnCreate event handler assign the ComboBox each of the four TViewStyle constants to the Items’ Objects property. You could also simply code this within a series of OnClick event handlers as, for instance, ListView1.->ViewStyle := vsIcon. */ void __fastcall TForm1::FormCreate(TObject *Sender) { TListItem *Item; TListColumn *Column; const char imagenames[3][20] = {"C++ Image", "Borland Image", "Delphi Image"}; const char Col2Array[3][40] = {"Documentation for the C++ icon.", "Borland icon.", "Delphi icon."}; // Create a ListView item for each image in the ImageList ListView1->SmallImages = ImageList1; ListView1->LargeImages = ImageList1; for (int i = 0; i < ImageList1->Count; i++) { Item = ListView1->Items->Add(); Item->Caption = imagenames[i]; Item->ImageIndex = i; Item->SubItems->Add(Col2Array[i]); } // Create two columns to show during viewing as vsReport Column = ListView1->Columns->Add(); Column->Caption = "Column 1"; Column->Width = 200; Column = ListView1->Columns->Add(); Column->Caption = "Column 2"; Column->Width = 200; // Add View styles and constants to the Combo Box ComboBox1->Items->AddObject("vsIcon", reinterpret_cast<TObject *>(vsIcon)); ComboBox1->Items->AddObject("vsList", reinterpret_cast<TObject *>(vsList)); ComboBox1->Items->AddObject("vsReport", reinterpret_cast<TObject *>(vsReport)); ComboBox1->Items->AddObject("vsSmallIcon", reinterpret_cast<TObject *>(vsSmallIcon)); // Display first item in the Combo Box ComboBox1->ItemIndex = 0; } void __fastcall TForm1::ComboBox1Click(TObject *Sender) { ListView1->ViewStyle = (TViewStyle) ComboBox1->Items->Objects[ComboBox1->ItemIndex]; }
Delphi Examples:
{ This example requires a TPageControl already on the form. Also, you must add pages to the TPageControl by right clicking and selecting New Page. The example code will allow the user to select the ActivePage property through selection of a ComboBox item. During the form create, the Combo Box control is loaded with the names of each of the tabs, as well as the instance pointers to the corresponding tab. When the user selects the Combo Box item, the associated TTabSheet object contained in the Combo Box Objects array is used to set the ActivePage property. Select the Lines property of the TRichEdit to enter a string. Select the string before justifying. } procedure TForm1.FormCreate(Sender: TObject); var i: Integer; const colorarray : Array[0..4] of TColor = ( clYellow, clGreen, clBlue, clLime, clFuchsia); begin for i := 0 to PageControl1.PageCount - 1 do begin PageControl1.Pages[i].Brush.Color := colorarray[i]; ComboBox1.Items.AddObject(PageControl1.Pages[i].Name, PageControl1.Pages[i]); end; ComboBox1.ItemIndex := 0; PageControl1.ActivePage := TTabSheet(ComboBox1.Items.Objects[ComboBox1.ItemIndex]); end; procedure TForm1.ComboBox1Change(Sender: TObject); begin if (Sender is TComboBox) then with (Sender as TComboBox) do PageControl1.ActivePage := TTabSheet(Items.Objects[ItemIndex]); end;
{ This example requires a TListView, a TImageList and a TComboBox. You will need to double click the image list and add several images to the image list prior to running the project. You can use *.bmp or *.ico files from the \Images\Icons directory. During the form’s OnCreate event handler, items for the List View control are created for each image in the Image List and the ImageIndex is assigned the number of the image within the ImageList. Two columns are created so that when ViewStyle is vsReport, you will have columns to view. Also within the form’s OnCreate event handler assign the ComboBox each of the four TViewStyle constants to the Items’ Objects property. You could also simply code this within a series of OnClick event handlers as, for instance, ListView1.->ViewStyle := vsIcon. } procedure TComboForm.FormCreate(Sender: TObject); var I: Integer; ListItem: TListItem; NewColumn: TListColumn; begin Col2Array[0]:= 'Documentation for Image0.'; Col2Array[1]:= 'Documentation for Image1.'; Col2Array[2]:= 'Documentation for Image2.'; // Create a ListView item for each image in the ImageList with ListView1 do begin SmallImages := ImageList1; LargeImages := ImageList1; for I := 0 to ImageList1.Count - 1 do begin ListItem := Items.Add; Listitem.Caption := 'Image' + IntToStr(I); ListItem.ImageIndex := I; Listitem.SubItems.Add(Col2Array[I]); end; // Create two columns to show during viewing as vsReport NewColumn := Columns.Add; NewColumn.Caption := 'Column 1'; NewColumn.Width := 200; NewColumn := Columns.Add; NewColumn.Caption := 'Column 2'; NewColumn.Width := 200; // Add View styles and constants to the Combo Box ComboBox1.Items.AddObject('vsIcon', TObject(vsIcon)); ComboBox1.Items.AddObject('vsList', TObject(vsList)); ComboBox1.Items.AddObject('vsReport', TObject(vsReport)); ComboBox1.Items.AddObject( 'vsSmallIcon', TObject(vsSmallIcon)); // Display first item in the Combo Box ComboBox1.ItemIndex := 0; end; end; procedure TComboForm.ComboBox1Click(Sender: TObject); begin with ComboBox1 do ListView1.ViewStyle := TViewStyle(Items.Objects[ItemIndex]); end;
Copyright(C) 2009 Embarcadero Technologies, Inc. All Rights Reserved.
|
What do you think about this topic? Send feedback!
|