свойство objects у компанентов
например в ListBox1.items.objects - как записать туду переменную например типа string, а патом извлечь ее оттуда...
например в ListBox1.items.objects - как записать туду переменную например типа string, а патом извлечь ее оттуда...
В хэлпе IDE Delphi сказано, что objects-это указатель на объект класса TObject. Поэтому данными для добавления в этот контейнер могут быть только указатели на объекты класса TObject и его потомков.
Вот copy-paste из хэлпа:
var
I: Integer;
ListItem: TListItem;
NewColumn: TListColumn;
begin
// 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;
end;
// Create two columns to show during viewing as vsReport
NewColumn := Columns.Add;
NewColumn.Caption := 'Column 1';
NewColumn := Columns.Add;
NewColumn.Caption := 'Column 2';
// 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 TForm1.ComboBox1Click(Sender: TObject);
begin
with ComboBox1 do
ListView1.ViewStyle := TViewStyle(Items.Objects[ItemIndex]);
end;
Не только - можно использовать как просто указатель, а можно и как Integer, word и другое длиной 16 бит. "Integer(Items.Objects[ItemIndex])".
может есть пример попанятнее?
может есть пример попанятнее?
понимаешь, TObject - это у казатель на объек, УКАЗАТЕЛЬ, то есть по сути переменная типа pointer, и как следсттвие она может и просто на данные указывать и как integer, word использоваться, вот и всё.
токо, не забывай быделенную тобой память под даннае перед Delete-м эллемента освобождать.