Перейти к содержанию
Fire Monkey от А до Я
  • 0

Как программно создаваемому TListBoxItem присвоить стиль?


Kitty

Вопрос

Как программно на С++ создаваемому TListBoxItem присвоить стиль, например, TMetropolisUIListBoxItem?

void __fastcall TMainForm::Button4Click(TObject *Sender)
{
	TListBoxItem * item;
	TTimeEdit * VideoTimeEdit;
	ListBox1->BeginUpdate();
	int j = 0;
    for (int i = 0; i < 10; i++)
	   {
		item = new TListBoxItem(ListBox1);
		item->Text = "Текст: " + IntToStr(i);
		item->Height = 44;
		item->ItemData->Detail = "Детальный текст: " + IntToStr(i);
		item->ItemData->Bitmap = ImageControl1->Bitmap; //тут bmp 44x44
		VideoTimeEdit = new TTimeEdit(item);
		VideoTimeEdit->Parent = item;
		VideoTimeEdit->Position->X = 140;
		VideoTimeEdit->Position->Y = 10 ;
		VideoTimeEdit->TimeFormatKind = 1;
	    ListBox1->AddObject(item);
	  }
	ListBox1->EndUpdate();
}
Ссылка на комментарий

Рекомендуемые сообщения

  • 0
  • Администраторы

  • Лучше использовать для этих целей TMetropolisUIListBoxItem  и создавать итемы именно этого класса. Так как TMetropolisUIListBoxItem определяет логику по заданию данных в объекты стиля

    item = new TMetropolisUIListBoxItem(Owner);
    
  • Стандартный стиль для TMetropolisUIListBoxItem - "collectionlistboxitem"
P.S. Когда создаете объекты в RunTime нужно указывать в качестве владельца форму, а не родительский контрол. Изменено пользователем Brovin Yaroslav
Ссылка на комментарий
  • 0

>P.S. Когда создаете объекты в RunTime нужно указывать в качестве владельца форму, а не родительский контрол.

 

Поскольку никакой литературы по FMX на С++ нет, я воспользовалась книгой для Дельфи.

Дмитрий Осипова:

"Delphi Программирование для Windows, OS X, iOS и Android".

У него повсеместно:

Item := TListBoxItemCreate(LisBox1)

Таким образом это он виноват. :)

Ссылка на комментарий
Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...