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;


 

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

29780. Цепь прохождения разговора между двумя абонентами П-194М по принципиальной схеме 474 KB
  2: При работе станции в поддиапазоне А частоты возбудителя лежат в пределах 60120 мГц а в поддиапазонах Б и В в пределах 6011199 мГц. В сменных блоках передатчиков обеспечивается или только усиление А или усиление и умножение частоты колебаний возбудителя Б В. Отличие заключается лишь в том что в приемниках поддиапазонов Б и В дополнительно применено соответственно удвоение и учетверение частоты первого гетеродина блока Б2 общего для трех поддиапазонов станции. Как видно из рисунков в приемниках применено двойное...
29781. Цепь посылки вызова абонента АТС по СЛ с коммутатора П-194М по принципиальной схеме 354 KB
  Для обеспечения диапазонной кварцевой стабилизации частоты в возбудителе применена частотная автоматическая подстройка частоты генератора плавного диапазона по эталонному кварцевому калибратору источнику сетки опорных частот. Структурная схема возбудителя по назначению и принципу работы может быть разделена на три части: Тракт высокой частоты состоящий из генератора плавного диапазона частотного модулятора с компенсирующим усилителем и усилителя высокой частоты т. устройств обеспечивающих генерирование усиление и частотную...
29782. Цепь дистанционного управления радиостанцией П-194М по принципиальной схеме 77.5 KB
  После ответа требуемого абонента телефонист переводит ключ ОВ в среднее положение. При этом абоненты остаются соединенными шнуровой парой коммутатора, а приборы рабочего места от цепи разговора отключаются. Разговорные токи между абонентскими телефонными аппаратами пройдут по цепи
29783. Назначение и принцип работы источников вызова П-194М по принципиальной схеме 82 KB
  Назначение и принцип работы источников вызова П194М по принципиальной схеме. Источники вызова их назначение и принцип работы. Вызывные приборы рабочего места телефониста предназначены для посылки вызова абоненту. Вызывной трансформатор служит для понижения напряжения сети переменного тока 127 220 В до напряжения 80В используемого для посылки вызова абоненту.
29784. Назначение и ТТХ линейного телеграфного коммутатора П-190(192) 63.5 KB
  Назначение и ТТХ линейного телеграфного коммутатора П190192. Назначение состав и основные тактикотехнические характеристики коммутатора П190. НАЗНАЧЕНИЕ Комплект линейнотелеграфного коммутатора П190 предназначен для оборудования линейнотелеграфных кроссов и аппаратных а также для каблирования вводов узлов связи. Комплект коммутатора предназначен для работы в диапазоне температур окружающего воздуха от 0 до f50C также при относительной влажности воздуха не выше 95 о и температуре 25С.
29785. Классификация полевых кабелей связи. Конструкция и маркировка кабелей 63.5 KB
  Полевые кабели связи. Современные кабели связи классифицируются по ряду признаков в зависимости от назначения и области применения условий прокладки и эксплуатации спектра передаваемых частот конструкции материала и формы изоляции системы скрутки рода защитных покровов. В первую очередь кабели связи подразделяются на две основные группы: полевые и стационарные. Стационарные кабели предназначены для продолжительной службы; они обладают высокими и стабильными электрическими характеристиками и большой дальностью связи.
29786. Назначение, конструкция и ТТХ легкого полевого кабеля П-274М (внутриузлового кабеля ПТРК-5х2, кабеля дальней связи П-296М) 647 KB
  Назначение конструкция и ТТХ легкого полевого кабеля П274М внутриузлового кабеля ПТРК5х2 кабеля дальней связи П296М. Стальные проволоки выполняют роль грузонесущего элемента и обеспечивают необходимую прочность кабеля на разрыве. № п п Характеристика Кабель П274М П2 П268 П4 1 Емкость кабеля число пар 1 1 1 2 2 Наружный диаметр изолированной ТПЖ не более мм 23 17 34 22 3 Наружный диаметр оболочки кабеля мм 40 1 73 4 Прочность на разрыв кг 80 80 130 150 5 Строительная длина м на ТК2 П280М1 барабане типа Б...
29787. Принцип формирования линейного спектра сигналов аппаратуры П-327-2 по структурной схеме 72 KB
  Эксплуатационные измерения основных параметров кабелей. Измерение параметров полевых линий связи по постоянному и переменному току Эксплуатационные измерения линий связи проводятся с целью установления соответствия их параметров нормам а так же определения характера и места повреждения в случае аварии на линии. Эксплуатационные измерения производятся при:...
29788. Назначение и ТТХ основных средств механизации прокладки полевых кабелей связи 250.5 KB
  К ним относятся катушки кабельные барабаны станки комплект П280 для намотки кабеля шесты для подвески кабеля шанцевый инструмент.8 предназначены для прокладки кабелей дальней связи П296 и П270 а также кабеля П272 по поверхности земли и в грунт с барабанов; заглубления в грунт кабеля предварительно проложенного по поверхности земли; извлечения кабеля из грунта или снятия кабеля проложенного по поверхности земли. Глубина прокладки кабеля до 50 см от поверхности земли.; скорость прокладки кабеля 4 6 км ч; скорость снятия...