Перейти к содержанию
  • Регистрация
  • 0
pavellyba

Доступ к Объекту в TListBox

Вопрос

Создал класс объекта:

type
  TNode = class(TListboxItem)
    FImage: TImage;
    FEdit: Tedit;

Добавляю этот объект в ListBox

listbox1.AddObject(Node);

Вопрос - Как получить теперь доступ к этим объектам?

Что-то типо Listbox1.Items[Listbox1.ItemIndex].Fedit.Text

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

  • 0

Создаете свой стиль для ListBox (точнее редактируете на основе стандартного). Там можно все визуально настроить как на обычной форме. Указываете этот StyleBook форме.

Имена объектов указываете в StyleName каждого объекта.

Чтобы менять картинку просто указывая image index для ListBox Item'a (vItem.ImageIndex ) картинка TGlyph  должна иметь имя 'glyphstyle'.

Далее обращаетесь к ним по StyleName именам так:

vItem.Text := vCampaign.Name;
vItem.StylesData['descript'] := fCore.Settings.LoadCampaignDescr(vCampaign.Name);
vItem.StylesData['details'] := '';

vItem.ImageIndex := 3;

В моем случае descript и details - это TText.

А вот так работать можно с любыми контролами:

vItem.NeedStyleLookup;
vItem.ApplyStyleLookup; // without this, FindStyleResource will return nil

vSwitch := vItem.FindStyleResource('switch') as TSwitch;
Assert(vSwitch <> nil);
vSwitch.IsChecked := vCampaign.Enable;
vSwitch.OnClick := DoOnClickCampaignSwitch;

 

ну и на всякий случай: 

vItem := TListBoxItem.Create(nil);
vItem.Parent:= Listbox;
Listbox.AddObject(vItem);
vItem.StyleLookup := 'CampaignItem';


 

Изменено пользователем ENRGY

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...