77969

Создание и работа со списками

Лекция

Информатика, кибернетика и программирование

Компонент класса TListBox представляет собой стандартный для Windows список выбора с помощью которого пользователь может выбрать один или несколько элементов выбора. В компоненте предусмотрена возможность программной прорисовки элементов поэтому список может содержать не только строки но и произвольные изображения. Если MultiSelect=Flse совпадает с индексом выделенного элемента TBorderStyle: перечисл Определяет стиль рамки: bsNone нет рамки; bssingle рамка толщиной 1 пиксель Count: Integer; Содержит количество строк в компоненте...

Русский

2015-02-05

80 KB

2 чел.

Создание и работа со списками

Для создания списков существуют 2 компоненты ListBox и ComboBox.

Компонент класса TListBox представляет собой стандартный для Windows список выбора, с помощью которого пользователь может выбрать один или несколько элементов выбора. В компоненте предусмотрена возможность программной прорисовки элементов, поэтому список может содержать не только строки, но и произвольные изображения.Свойства и методы компоненты ListBox (таблица 11):

Таблица 11 -  Свойства и методы компоненты ListBox

Название

Назначение

Свойства

Name:string

Наименование компоненты (по умолчанию ListBox1)

Items: TStrings;

Содержит набор строк, показываемых в компоненте

Itemlndex: Integer;

Содержит индекс сфокусированного элемента. Если MultiSelect=False, совпадает с индексом выделенного элемента

TBorderStyle:

перечисл

Определяет стиль рамки: bsNone - нет рамки; bssingle - рамка толщиной 1 пиксель

Count:

Integer;

Содержит количество строк в компоненте

MultiSelect: Boolean

Разрешает/отменяет выбор нескольких элементов

SelCount:

Integer

Содержит количество выбранных элементов

Selected[X: Integer] : Boolean;

Содержит признак выбора для элемента с индексом х (первый элемент имеет индекс 0)

Sorted: Boolean

Разрешает/отменяет сортировку строк в алфавитном порядке

Методы

Count

Определяет количество элементов  в списке

Clear

Удаляет весь список

Add

Добавляет новый элемент  в список

Delete

Удаляет определённый элемент  из списка

Insert

Вставляет новый элемент в список

LoadFromFile :

TString.

Для загрузки списка из файла

SaveToFile :

TString.

Для сохранения списка в файле

Комбинированный список TComboBox представляет собой комбинацию списка TListBox и редактора TEdit, и поэтому большинство его свойств и методов заимствованы у этих компонентов. Существуют пять модификаций компонента, определяемые его свойством style: csSimple, csDropDown, csDropDownList, csOwnerDrawFixed И csOwner DrawVariabie. В первом случае список всегда раскрыт, в остальных он раскрывается после нажатия кнопки справа от редактора (рис. 16). В модификации csDropDownList редактор работает в режиме отображения выбора и его нельзя использовать для ввода новой строки (в других модификациях это возможно). Модификации csOwnerDrawFixed и csOwnerDrawVariable используются программной прорисовки элементов списка. Используемые для этого свойства и методы полностью совпадают со свойствами и методами TListBox аналогичного назначения.

Фактически “своими” у компонента являются лишь свойства и события, связанные с раскрытием списка:

Рис. 16 -  Примеры комбинированных списков

Свойство DropDownCount определяет количество элементов списка, появление которых еще не приводит к необходимости прокрутки списка. По умолчанию это свойство имеет значение 8: если в списке указано 9 и более элементов (т. е. больше, чем содержит DropDownCount), при его раскрытии к окну будет добавлена полоса прокрутки. Свойство DroppedDown определяет, раскрыт ли в данный момент список. Это свойство доступно также для записи, что позволяет программно управлять состоянием списка. Событие OnDropDown происходит при изменении состояния списка.

Наполнение списка ведется методами Add, Append, Insert и т. п. его свойства Items класса TStrings.

Пример 1:  По фамилии в списке вывести его должность.

Поместите  на форму компоненты: 3 Label, ListBox и измените значения их свойств:

Свойство Caption у комконенты Label1 – ‘Список сотрудников’;

Свойство Caption у комконенты Label2 – ‘ ’;

Свойство Caption у комконенты Label3 – ‘Должность’;

Расположите компоненты как показано на рисунке 17 и введите текст программы для событий OnCreate для компоненты Form1 и OnClick для компоненты ListBox:

Рис. 17 -  Пример приложения

procedure TForm1.FormCreate(Sender: TObject);

begin

 ListBox1.Items[0]:='Иванов';

 ListBox1.Items[1]:='Петров';

 ListBox1.Items[2]:='Сидоров';

end;

procedure TForm1.ListBox1Click(Sender: TObject);

var i:byte;

begin

i:= ListBox1.ItemIndex;  // номер выбранного элемента

case i of

0: Label2.Caption:='директор';

1: Label2.Caption:='менеджер';

2: Label2.Caption:='программист';

end;

end;

Пример 2:  Просмотреть или добавить в список нового сотрудника.

Поместите  на форму компоненты: 2 Label, ComboBox, Button, Edit и измените значения их свойств:

Свойство Caption у комконенты Label1 – ‘Список сотрудников’;

Свойство Caption у комконенты Label2 – ‘Введите сотрудника’;

Свойство Caption у комконенты Button1 – ‘Добавить в список’;

Расположите компоненты как показано на рисунке 18  и введите текст программы для событий OnClick для компоненты Button1:

Рис. 18 -  Пример приложения

procedure TForm1.Button1Click(Sender: TObject);

begin

ComboBox1.Items.Add(Edit1.Text);

end;


 

А также другие работы, которые могут Вас заинтересовать

80338. Економіка тваринництва 85.5 KB
  Показниками ефективності галузі скотарства є: Технологічна ефективність: середньорічний надій молока від однієї корови; середньодобовий та річний приріст живої ваги ВРХ; затрати кормів на 1 ц молока та на 1 ц приросту живої ваги ВРХ. Економічна ефективність: трудомісткість виробництва 1ц молока та 1 ц приросту живої ваги ВРХ. собівартість виробництва 1 ц молока 1 ц приросту живої ваги ВРХ та 1 ц живої ваги ВРХ. середня ціна реалізації 1 ц молока 1 ц живої ваги ВРХ.
80339. Проектирование редуктора привода агрегатов средств наземного обслуживания 692 KB
  Основными недостатками передачи являются: большие габариты, что заставляет использовать ее исключительно для малонагруженных и высокооборотных передач; малая долговечность ремней, составляющая в среднем 1000 – 5000 часов; наличие скольжения, приводящего к непостоянству передаточного отношения.
80340. Обстеження публічно-недоступних місць, житла чи іншого володіння особи як негласна слідча (розшукова) дія 49.06 KB
  Обстеження публічнонедоступних місць житла чи іншого володіння особи як негласна слідча розшукова дія. Поняття суть мета правова основа та принципи обстеження публічнонедоступних місць житла чи іншого володіння особи. Саме тому єдиним джерелом доказової інформації є матеріали негласних слідчих розшукових дій зокрема обстеження публічнонедоступних місць житла чи іншого володіння особи. Це обумовлює необхідність детального вивчення правової основи вимог та принципів обстеження публічнонедоступних місць житла чи іншого володіння...
80341. Комунікації в команді 84.5 KB
  Дуже важливо, щоб кожен член команди знав або хоча б мав при бажанні можливість дізнатися про проект не менше, ніж його менеджер. І не варто нічого приховувати, ні проблем з замовником, ні розбіжностей з керівництвом. Важко очікувати самостійні, нестандартні та ефективні рішення від людини, яка бачить проблему тільки з одного боку.
80342. Спостереження за особою, річчю або місцем 32.9 KB
  Спостереження – один з основних способів пізнання світу. За його допомогою людина вивчає навколишню місцевість, розташовані на ній обєкти і предмети, визначає зміни, які на ній відбуваються, та на основі своїх спостережень вчиняє певні дії.
80343. Виконання спеціального завдання з розкриття злочинної діяльності організованої групи чи злочинної організації 30.17 KB
  Виконання спеціального завдання з розкриття злочинної діяльності організованої групи чи злочинної організації. Правові засади виконання спеціального завдання з розкриття злочинної діяльності організованої групи чи злочинної організації У КПК України гл. 272 передбачено такий вид негласних слідчих розшукових дій як виконання спеціального завдання з розкриття злочинної діяльності організованої групи чи злочинної організації. Під час досудового розслідування тяжких або особливо тяжких злочинів можуть бути отримані відомості речі і...
80344. ЗАХОДИ ЗАБЕЗПЕЧЕННЯ КРИМІНАЛЬНОГО ПРОВАДЖЕННЯ 113.69 KB
  Зважаючи на вимоги кримінально-процесуальної форми, необхідність дотримання принципу законності, вивчення питань, що стосуються обрання, зміни та скасування заходів забезпечення кримінального провадження є запорукою успішної та ефективної роботи органів досудового розслідування, дотримання прав громадян та недопущення їх порушень.
80345. Россия после смуты 17 век 40.5 KB
  Казаки попытались стать «под руку» московского царя в 1620 г. Царь отказал. Причина – набеги казаков на крымские территории Турции. Польша – конфликт с Турцией из-за Молдавии. Запорожцы – на стороне Польши. Михаил Хмельницкий, П. Сагайдачный сложили головы за польское дело, Богдан Хмельницкий попал в турецкий плен. .
80346. Контроль за вчиненням злочину 40.62 KB
  В Україні проведення контрольованої поставки здійснюється згідно з положеннями пункту 1 частини першої статті 271 Кримінального процесуального кодексу України у порядку визначеному нормативноправовими актами Міністерства внутрішніх справ України податкової міліції Державної податкової служби України Служби безпеки України Державної митної служби України погодженими з Генеральною прокуратурою України та зареєстрованими у Міністерстві юстиції України. У Законі України Про оперативнорозшукову діяльність далі –ОРД у пункті 2 частини...