МЕТА: Ознайомитись з компонентами ListBox, ComboBox, CheckBox, ProgressBar, Gauge їх властивостями. Навчитися створювати програми, які опрацьовують списки даних та відображають індикацію виконання певних процесів.
ЗНАТИ: основні властивості розглядаємих компонентів.
ВМІТИ: використовувати компоненти ListBox, ComboBox, CheckBox, ProgressBar, Gauge в створенні власних програм.
Компонент TListBox – відображає список рядків і дозволяє користувачеві вибрати з нього необхідні рядки.
У список автоматично додаються смуги прокручування, якщо всі рядки не вміщуються у вікні компонента.
Основна властивість компонента, що містить список рядків, – Items, що має тип TStrings. Заповнити його під час проектування можна, нажавши кнопку із крапками біля цієї властивості у вікні Інспектора Об'єктів. Під час виконання працювати із цією властивістю можна, користуючись властивостями й методами класу TStrings – Clear, Addі іншими.
У компоненті TListBoxє властивість MultiSelect, що дозволяє користувачеві множинний вибір у списку. Якщо MultiSelect = false(значення за замовчуванням), то користувач може вибрати тільки один елемент списку. У цьому випадку можна довідатися індекс обраного рядка із властивості Itemlndex,доступного тільки під час виконання. Якщо жодна рядок не обраний, то Itemlndex= -1. Початкове значення Itemlndexнеможливо задати під час проектування. За замовчуванням Itemlndex= -1. Це означає, що жоден елемент списку не обраний. Якщо ви хочете задати цій властивості якесь інше значення, тобто встановити вибір за замовчуванням, що буде показаний у момент початку роботи додатка, то зробити це можна, наприклад, в оброблювачі події OnCreateформи, увівши в нього оператор виду ListBox1.Itemlndex:=0.
Якщо допускається множинний вибір (MultiSelect = true), те значення Itemlndexвідповідає тому елементу списку, що перебуває у фокусі. При множинному виборі перевірити, чи обраний даний елемент, можна перевіривши властивість SelectedСIndex: Integerтипу Boolean.
На спосіб множинного вибору при MultiSelect = trueвпливає ще властивість ExtendedSelect. Якщо ExtendedSelect = true,то користувач може виділити інтервал елементів, виділивши один з них, потім нажавши клавішу Shiftі перевівши курсор до іншого елемента. Виділити не прилягаючий друг до друга елементи користувач може, якщо буде втримувати під часвибору натиснутої клавішу Ctrl. Якщо ж ExtendedSelect = false,те клавіші Shiftі Ctrl при виборі не працюють. Властивість Columnsвизначає число стовпців, у яких буде відображатися список, якщо він не міститься цілком у вікні компонента ListBox.
Властивість Sortedдозволяє впорядкувати список за алфавітом. При Sorted = trueнові рядки в список додаються не в кінець, а за алфавітом.
Властивість Style,установлене в lbStandard(значення за замовчанням) відповідає списку рядків. Інші значення Styleдозволяють відображати в списку не тільки текст, але й зображення.
Компонент TComboBoxпоєднує функції компонентів TListBox–списку, і TEdit– вікна редагування. Компонент дозволяє користувачеві вибрати зі списку необхідний рядок або задати як вибір власний текст. Список може відображатися в розгорнутому виді або як, що випадає список. Відмінність TComboBoxвід схожого по функціях компонента TListBoxполягає в наступному:
- TComboBoxдозволяє користувачеві редагувати список, а TListBoxне дозволяє;
- в TComboBoxсписок може бути розгорнуть або згорнуть, а в TListBoxвін завжди розгорнутий;
- TLіstBoxможе допускати множинний вибір, а в TComboBoxкористувач завжди повинен вибрати тільки один елемент.
Основне властивість компонента, що містить список рядків, – Items, що має тип TStrings. Заповнити його під час проектування можна, нажавши кнопку з крапками біля цієї властивості у вікні Інспектора Об'єктів. Під час виконання працювати із цією властивістю можна, користуючись властивостями й методами класу TStrings – Clear, Addі іншими. Стиль зображення списку визначається властивістю Style:
csDropDownсписок, що випадає, з рядками однакової висоти й з вікном редагування, що дозволяє користувачеві вводити або редагувати текст;
csSimpleрозгорнутий список з рядками однакової висоти й з вікном редагування, що дозволяє користувачеві вводити або редагувати текст;
caDropDownListсписок, що випадає, з рядками однакової висоти, не утримуючий вікна редагування.
Вибір користувача або уведений їм текст можна визначити за значенням властивості Text.Індекс обраного користувачем елемента списку можна визначити по властивості ItemІndex(доступно тільки під час виконання). Якщо у вікні проводилося редагування даних, то ItemІndex= -1. Початкове значення Itemlndexнеможливо задати під час проектування. За замовчуванням ItemІndex= -1. Якщо ви хочете задати цій властивості якесь інше значення, тобто установити вибір за замовчуванням, що буде показаний у момент початку роботи додатка, то зробити це можна, наприклад, в оброблювачі події OnCreateформи, увівши в нього оператор виду ComboBox1.ItemIndex:=0;
Властивість MaxLengthвизначає максимальне число символів, які користувач може ввести у вікно редагування. Якщо MaxLength= 0, то число символів, що вводять, не обмежено.
Свойство Sortedдозволяє впорядкувати список за алфавітом. При Sorted = trueнові рядки в список додаються не в кінець, а за алфавітом.
Текст обраної або написаної користувачем рядка перебуває у властивості Text.Індекс обраного рядка можна довідатися з властивості ІtemІndex.
Основна подія компонента – OnChangeнаступає при зміні тексту у вікні редагування в результаті прямого редагування тексту або в результаті вибору зі списку.
САМОСТІЙНА ПІДГОТОВКА ДО ВИКОНАННЯ ЛАБОРАТОРНОЇ РОБОТИ
1. Записати в зошит тему, мету, обладнання, практичні завдання свого варіанту (вибирається згідно номеру комп’ютера).
2. По літературі до лабораторної роботи вивчити основи роботи з компонентами ListBox, ComboBox, CheckBox, ProgressBar, Gauge їх властивостями в інтегрованому середовищі розробки Delphi.
3. По інструкції до лабораторної роботи ознайомитись з порядком виконання роботи.