Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ListBox


Ser_Kham1 ©   (2001-12-17 16:10:00) 

Добрый день джентльмены.
Читал я help по ListBox и вычитал в описании свойства Items:
"By default, the items in a list box are of type TStrings."
А что можно как-то изменить это самое By default и сделать чтобы items in
a list box are of какого-нибудь другого типа?
С уважением малыш.


MBo   (2001-12-17 17:37:00) [1]

понЯл.


Fellomena   (2001-12-17 17:31:00) [2]

2 Mbo: да нет... разницу между объектом и, к примеру, строковым значением я понимаю =)
я имела ввиду то, что реализация (программная) ListBox-а не меняется (если ты понимаешь о чём я).


MBo   (2001-12-17 17:25:00) [3]

разница в возможности добавления ЛЮБОГО объекта - от иконки до навороченного компонента, если, конечно, возникнет такое желание

Да, удалять надо вручную. Из стандартных структур данных Delphi, насколько помню, только TObjectList сам освобождает свои элементы.


Dimka Maslov   (2001-12-17 17:24:00) [4]

Компилятор грязную работу делать не будет. Заботиться о создании объектов и их освобождении нужно самому.


Виктор Щербаков   (2001-12-17 17:23:00) [5]

Удалять придется самому.
Чтобы объекты уничтожались автоматически нужно пользовать
TObjectList.


Ser_Kham1   (2001-12-17 17:19:00) [6]

Спасибо MBo. Это мне подойдёт. Однако возникает вопрос, когда я буду вставлять или добавлять новые элементы в список, мне нужно будет динамичсеки создавать соответствующие Objects. Однако мне же потом наверное необходимо будет позаботиться об удалении динамически созданных Objects,или компилятор сам за меня сделает грязную работу?


Fellomena   (2001-12-17 17:14:00) [7]

... а какая разница ?


MBo   (2001-12-17 17:12:00) [8]

я имел в виду listbox1.items.objects[i]


Fellomena   (2001-12-17 17:08:00) [9]

Mbo всё правильно сказал, вот пример:

var
i: real;
begin
i:=1.35;
i:=sqrt(i*i);
ListBox1.Items[0]:=FloatToStr(i); // механизм преобразования типов
end;

=)


MBo   (2001-12-17 16:18:00) [10]

а)нет, если самому не переписывать
б)незачем, т.к. к каждой строчке в strings можно прицепить объект - любой!


Наверх

Титульная страница Поиск, карта сайта Написать письмо