1000_____________________________________________Глава 15

Классы TList, TStringList, TStrings

Прототипы
Для TList:

int   fastcall IndexOf(void * Item);

для TStrings и TStringList:

virtual int   fastcall IndexOf(const System::AnsiString S) ;

Описание

Вызов IndexOf возвращает индекс первого вхождения в массив списка задан-
ного элемента (указателя Item для TList или строки S для TStringList и TStrings^.
Индексация начинается с О (О — первый элемент массива). Если заданного элемен-
та в списке нет, возвращается -1.

Пример

В приведенном ниже примере определяется, есть ли в списке сотрудник, фа-
милия которого задана пользователем в окне Editl.

TStringList *LPerson = new TStringList;

if (LPerson->IndexOf(Editl->Text) < 0)

ShowMessage("Сотрудника " + Editl->Text + " в списке нет");

Insert

Процедура вставляет элемент в список в заданную позицию
Классы TList, TStringList, TStrings

Прототипы
Для TList:

void   fastcall Insert(int Index, void * Item) ;

для TStrings и TStringList:

virtual void _fastcall Insert(int Index, const System::AnsiString S);

Описание

Процедура Insert вставляет элемент (указатель Item или строку S) в список в
позицию, индекс которой задан параметром Index. Если задан Index = 0, элемент
вставляется в первую позицию. При вставке элемента все имеющиеся в списке эле-
менты с индексами, равными и большими Index, сдвигаются, т.е. их индексы уве-
личиваются на 1.

Если список сортирован, то вызов Insert приводит к генерации исключения
EListError. Для сортированных списков следует использовать метод Add.

Если в списки TStringList и TStrings надо вставить строку, связанную с объ-
ектом, то вместо метода Insert следует использовать метод InsertObject.

Invalidate

Сообщает Windows о необходимости полностью перерисовать компонент после
того, как будут обработаны другие важные сообщения Windows

Класс TControl

Определение

virtual void   fastcall Invalidate(void);