|
|
|
| |
Определяет список текстовых строк.
Доступ к объекту
Доступ к объекту также можно получить через визуальные компоненты, имеющие свойства типа TStrings. Например:
frm=new TForm();
...
mem=new TMemo(frm);
...
strObj=mem.Lines;
| Собственные свойства
|
| Свойство
| Тип
| Описание
|
| Capacity
| Number
| ожидаемое количество строк в списке
|
| CaseSensitive
| Boolean
| учитывать регистр букв
|
| CommaText
| String
| текст, объединяющий все строки списка, заключаемые в разделители QuoteChar, через запятую
|
| DelimitedText
| String
| текст, объединяющий все строки списка через пробел, непечатные символы или через разделитель, указанный в свойстве Delimiter
|
| Delimiter
| String
| символ, используемый свойством DelimitedText в качестве разделителя строк (по умолчанию ',')
|
| Duplicates
| Enum
| способ обработки дубликатов строк (см. ниже)
|
| LineBreak
| String
| группа символов, используемая в качестве завершителя строк
|
| NameValueSeparator
| String
| символ, используемый в качестве разделителя в парах "Имя Значение" (по умолчанию '=')
|
| QuoteChar
| String
| символ, используемый свойством DelimitedText в качестве ограничителя строк
|
| Sorted
| Boolean
| автоматически сортировать список
|
| StrictDelimiter
| Boolean
| использовать в качестве разделителя строк в свойстве DelimitedText только символ, указанный в свойстве Delimiter
|
| Strings[]
| String
| индексированный список строк
|
| Text
| String
| текст, объединяющий все строки списка через завершитель, указанный в свойстве LineBreak
|
| ValueFromIndex[]
| String
| индексированный список значений
|
| Только чтение
| [TYPE]
| [DESC]
|
| Count
| Number
| количество строк в списке
|
| Names[]
| String
| индексированный список имен
|
| UpdateCount
| Number
| количество вызовов метода BeginUpdate, не завершенных вызовом метода EndUpdate
|
|
| Свойство Duplicates
|
| Значение
| Описание
|
| dupIgnore
| запретить дубликаты строк (при установленном свойстве Sorted)
|
| dupAccept
| разрешить дубликаты строк
|
|
Стандартные свойства
| Собственные методы
|
| Метод
| Описание
|
| Add
| добавляет указанную строку в конец списка
|
| AddStrings
| добавляет указанный список строк в конец текущего списка
|
| Assign
| копирует указанный список строк в текущий список
|
| BeginUpdate
| выключает переиндексацию списка
|
| Clear
| удаляет все строки списка
|
| Delete
| удаляет строку с указанным индексом
|
| EndUpdate
| включает переиндексацию списка
|
| Equals
| сравнивает текущий список строк с указанным списком
|
| Exchange
| меняет местами две строки с указанными индексами
|
| IndexOf
| возвращает индекс указанной строки
|
| IndexOfName
| возвращает индекс строки с указанным именем
|
| Insert
| вставляет новую строку в указанную позицию списка
|
| LoadFromFile
| загружает список строк из указанного файла
|
| Move
| перемещает строку с указанным индексом в новую позицию
|
| SaveToFile
| сохраняет список строк в указанном файле
|
| Sort
| сортирует список строк по возрастанию
|
|
Стандартные методы
var tab=20;
// Главная форма frm=new TForm(); frm.Caption="JS+ - базовый компонент TStrings"; frm.Width =450; frm.Height=300;
// Строка состояния stb=new TStatusBar(frm); stb.SimpleText=" Пример работы со списком строк TStrings";
// Заголовок lbl=new TLabel(frm); lbl.Caption="Список телефонов"; lbl.Font.Style=fsBold; lbl.Left=(frm.ClientWidth-lbl.Width)/2; lbl.Top =tab;
// Кнопка 1 bt1=new TButton(frm); bt1.Caption="Обновить"; bt1.Top=lbl.Top+lbl.Height+tab; bt1.numTag=1; bt1.Hint="Обновить список"; bt1.ShowHint=true; bt1.OnClick=btn_Click;
// Кнопка 2 bt2=new TButton(frm); bt2.Caption="Сортировать"; bt2.Width=frm.TextWidth(bt2.Caption)+30; bt2.Left =frm.ClientWidth-bt2.Width-tab; bt2.Top =bt1.Top+bt1.Height+tab; bt2.numTag=2; bt2.Hint="Сортировать список"; bt2.ShowHint=true; bt2.OnClick=btn_Click;
bt1.Left =bt2.Left; bt1.Width=bt2.Width;
// Список строк str=new TStrings(); Make_Strings(str);
// Текстовое поле mem=new TMemo(frm); mem.BorderStyle=bsSingle; mem.SetBounds(tab,bt1.Top,bt1.Left-tab*2,stb.Top-bt1.Top-tab); mem.Lines.Assign(str);
frm.ShowModal();
// Формирует список телефонов function Make_Strings(str) { var phn_Str;
str.Clear(); do { phn_Str=""+Math.round(Math.random()*10000000); switch (phn_Str.substr(0,1)) { case "0": case "8": continue; } if (phn_Str.length<7) continue; phn_Str=phn_Str.substr(0,3)+"-"+phn_Str.substr(3); str.Add(phn_Str); } while (str.Count<10); }
// Обработчик события OnClick function btn_Click(btn) { switch (btn.numTag) { case 1: Make_Strings(str); break; case 2: str.Sort(); }
mem.Lines.Assign(str); }
|
Совместимость
C++ Builder/Delphi (компонент TStringList)
|
| JS+ | Руководство пользователя
|
|
|
| |
|
|