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

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

Listview, подскажите как сварганить [XP]


aldis ©   (2011-04-08 15:49:00) 

Как добавлять в колонки listview данные?
То есть есть колонки Дата и Событие, в Дату пишется число из календаря, в Событие - текст из memo, например надо ввести несколько событий на разные даты:
"08.04.11: Написать на форум
09.04.11: Прочитать ответ"

Form5.Listview1.Items.Add.caption := DateToStr(monthcalendar1.date);
form5.ListView1.Items.Item[0].SubItems.add(memo1.text);


Проблема со второй строчкой, что написать вместо Item[0], чтобы последовательно добавляла строки?


Dennis I. Komarov   (2011-04-11 08:31:00) [1]


> Еще вопросик - TListItem(AnyPointer).SubItems.Add AnyPointer
> - что должно быть обычно?

Указатель на итем, куда надо добавить построку. Т.е. в случае [9] это LI, в случае [11] на него будет ссылаться with


Германн   (2011-04-09 02:33:00) [2]


> KilkennyCat ©   (08.04.11 20:42) [12]
>
>
> > Германн ©   (08.04.11 19:54) [11]
>
> неплохо.
> использовать функцию в with и пихнуть ей свойства.
>

Не понял. Это мне плюс или минус?
:)


aldis   (2011-04-08 22:57:00) [3]


> var
>  Li: TListItem;
>
> brgin
> Li := ListView1.Items.Add;
> Li.Caption := 'Строка 1';
> Li.Subitems.Add('строка 2');
> Li.Subitems.Add('строка 3');

Всем спасибо, вот это работает.


aldis   (2011-04-08 22:52:00) [4]

Еще вопросик - TListItem( AnyPointer).SubItems.Add

AnyPointer - что должно быть обычно?


aldis   (2011-04-08 22:35:00) [5]


> Рыдать всем !

Товарищ, я задала конкретный вопрос, люди мне подсказали пути решения. Если твои знания выше, чем у меня, я за тебя рада, но это не повод стебаться. Карта слезу любит :)

> Юрий   (08.04.11 19:11) [9]
> <оффтопик>
> Я вот сейчас новый для себя язык изучаю, и плаваю во многих
> вопросах.
> Находимые в форумах короткие примеры рещения увличивают
> эффективность процесса обучения очень существенно, а читание
> документации - это вещь полезная, но для этого надо иметь
> уже какой то базовый уровень владения сабжем. Для начинающего
> нужны именно примеры. Сначала примеры, потом документация.
>
>
> </оффтопик>
>
> var
>  Li: TListItem;
>
> brgin
> Li := ListView1.Items.Add;
> Li.Caption := 'Строка 1';
> Li.Subitems.Add('строка 2');
> Li.Subitems.Add('строка 3');
>
>
> > aldis ©   (08.04.11 17:06) [7]
>
>
> > У меня нет справки...:( у меня Delphi Studio XE.
> >
>
>
> http://docwiki.embarcadero.com/RADStudio/en/Main_Page


Спасибо, Юрий. Вы правы, что справки это отлично, но порой нужен пример перед глазами. Показали ссылку, я сразу нашла что искала и плюс много другого, нужного, полезного.


Сергей М.   (2011-04-08 21:25:00) [6]


> У меня нет справки...:(


Рыдать всем !


KilkennyCat   (2011-04-08 20:42:00) [7]


> Германн ©   (08.04.11 19:54) [11]

неплохо.
использовать функцию в with и пихнуть ей свойства.


Германн   (2011-04-08 19:54:00) [8]


> var
>  Li: TListItem;
>
> brgin
> Li := ListView1.Items.Add;
> Li.Caption := 'Строка 1';
> Li.Subitems.Add('строка 2');
> Li.Subitems.Add('строка 3');
>

На ДМ так некошерно. :)
Надо так
with ListView1.Items.Add do begin
 Caption := 'Строка 1';
 Subitems.Add('строка 2');
 Subitems.Add('строка 3');
end;


clickmaker   (2011-04-08 19:20:00) [9]

> Li := ListView1.Items.Add;
> Li.Caption := 'Строка 1';
> Li.Subitems.Add('строка 2');
> Li.Subitems.Add('строка 3');

это будет не строка, а столбец )


_Юрий   (2011-04-08 19:11:00) [10]

<оффтопик>
Я вот сейчас новый для себя язык изучаю, и плаваю во многих вопросах.
Находимые в форумах короткие примеры рещения увличивают эффективность процесса обучения очень существенно, а читание документации - это вещь полезная, но для этого надо иметь уже какой то базовый уровень владения сабжем. Для начинающего нужны именно примеры. Сначала примеры, потом документация.

</оффтопик>

var
 Li: TListItem;

brgin
Li := ListView1.Items.Add;
Li.Caption := 'Строка 1';
Li.Subitems.Add('строка 2');
Li.Subitems.Add('строка 3');


> aldis ©   (08.04.11 17:06) [7]


> У меня нет справки...:( у меня Delphi Studio XE.
>


http://docwiki.embarcadero.com/RADStudio/en/Main_Page


clickmaker   (2011-04-08 17:09:00) [11]

тогда см. подсказку №1 от Германна


aldis   (2011-04-08 17:06:00) [12]

У меня нет справки...:( у меня Delphi Studio XE.


Германн   (2011-04-08 16:59:00) [13]

Подсказка №1
Метод TlistItems.Add  на самом деле функция.
Подсказка №2
В справке по этому методу есть пример.


aldis   (2011-04-08 16:49:00) [14]


> добавляла строки куда?
> каждая строка - новый элемент листвью или как?

Ну да, но из-за того, что там Item[0], то получается только первая строка, а в последующих уже только дата, событие не добавляется. Пыталась через переменную, то есть Item[n], где n:=n+1, но не фига.


clickmaker   (2011-04-08 16:43:00) [15]

> что написать вместо Item[0], чтобы последовательно добавляла
> строки?

добавляла строки куда?
каждая строка - новый элемент листвью или как?


RWolf   (2011-04-08 16:42:00) [16]


> чтобы последовательно добавляла строки?

строки в ListView добавляются методом Add свойства Items.


aldis   (2011-04-08 16:24:00) [17]

Спасибо, а по-подробней можно объяснить?


Dennis I. Komarov   (2011-04-08 16:17:00) [18]

TListItem(AnyPointer).SubItems.Add


Наверх

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