Отправляет email-рассылки с помощью сервиса Sendsay

Уроки по C++ Builder

  Все выпуски  

Уроки по C++ Builder


Информационный Канал Subscribe.Ru

C++ Builder. VCL. Уроки с сайта http://progs.biz

Рассылка №12

C++ Builder. VCL. Урок 18. Класс TStrings.
C++ Builder. VCL. Урок 19. Класс TStringList.

Полные версии уроков (с картинками) можно найти по адресам:
Урок 18. Класс TStrings.
Урок 19. Класс TStringList.

А. В. Козлов. Программирование для Интернет в C++Builder 5.
А. В. Козлов. Программирование для Интернет в C++Builder 5.
Заказать на Озоне
Рассылки сайта progs.biz через subscribe.ru
Уроки по DirectX
Уроки по DirectX с сайта http://progs.biz. Использование графики (Direct3D, DirectDraw), звука, взаимодействие с пользователем (DirectInput). Применение DirectX в Visual C++, Visual Basic и др., на платформе .NET (языки C#, VB.NET). Каждый урок расчитан на 15-20 минут.

C++ Builder. Урок 18. Класс TStrings

Класс TStrings предназначен для хранения набора строк. Экземпляры этого класса нельзя создавать непосредственно - он служит в качестве базового класса для других классов.

У многих компонентов есть стойсто типа TStrings. Например, у ListBox'а есть свойство Items типа TStrings (см. урок 12).

Основное свойство для класса TStrings - это Strings, в котором и хранятся все строки. Доступ к определенной строке можно получить через ее индекс (нумерация, как всегда, идет с нуля):

ListBox1->Items->Strings[0]; //Пример для ListBox'а.

Для добавления строки служит метод Add:

ListBox1->Items->Add("Roman"); //Пример для ListBox'а.

Для вставки строки в определенное место служит метод Insert:

ListBox1->Items->Insert(1,"Ira");

В этом примере (он, как и все примеры в этом уроке, написан для ListBox'а) мы добавляем во второе место строку "Ira" (помните, что нумерация идет с нуля).

Свойство Count. Возвращает количество строк. Пример использования:

k=ListBox1->Items->Count;

Метод Clear предназначен для удаления всех строк из компонента. Вот пример его использования:

ListBox1->Items->Clear();

Для удаления же отдельного элемента с номером i служит метод Delete:

ListBox1->Items->Delete(1);

Для поиска определенной строки служит метод IndexOf:

k=ListBox1->Items->IndexOf("Ira");

Этот метод берет в качестве параметра искомую строку и возвращает ее номер. Если строка не найдена, то возвращается -1.

Наверх

C++ Builder. Урок 19. Класс TStringList

Класс TStringList предназначен для хранения набора строк. Он является непосредственным потомком класса TStrings. Как потомок, он наследует все методы и свойства своего родителя.

В отличие от своего родителя класс TStringList позволяет создавать свои экземпляры.

Кроме того, этот класс имеет собственные свойства и методы, самые важные из которых перечислены ниже:

Свойство Sorted логического типа. Если установлено в true, то список автоматически сортируется, если false, то не сортируется. Пример использования:

  TStringList *s=new TStringList;
  s->Sorted=true;
  s->Add("Roman");
  s->Add("Igor");
  s->Add("Olga");
  //Показываем список в ListBox'е.
  ListBox1->Items->AddStrings(s);

В ListBox выведется отсортированный список ("Igor", "Olga", "Roman").

Свойство Duplicates. Свойство перечисляемого типа, если установлено в dupIgnore, то добавить повторяющуюся стороку нельзя (но при этом старые повторяющиеся строки сохраняются), dupAccept - можно добавлять повторяющиеся строки, dupError - при попытке добавить повторяющуюся строку генерируется ошибка EStringListError. Это свойство игнорируется, если список не отсортирован.

Свойство CaseSensitive. Свойство логического типа, определяющее, учитывается ли при сортировке регистр (true - учитывается, false - не учитывается).

Метод Sort. Сортирует список. Пример использования:

  TStringList *s=new TStringList;
  s->Add("Roman");
  s->Add("Igor");
  s->Add("Olga");
  s->Sort();
  //Показываем список в ListBox'е.
  ListBox1->Items->AddStrings(s);

В ListBox выведется отсортированный список ("Igor", "Olga", "Roman").

Наверх

Copyright Алексеев Игорь, 2002-2003
Copyright Шмидт Отто, 2002-2003
Copyright сайт progs.biz, 2002-2003
Распространение материалов без разрешения владельцев авторских прав запрещено.


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное