Лабораторна робота №8
Тема роботи: ОБРОБКА ПОДІЙ У DELPHI. КОМПОНЕНТИ TLISTBOX І TCOMBOBOX
Мета роботи: вивчити обробку подій і компоненти TListBox і TComboBox. Створити дизайн і програму обробки рядків з використанням цих компонентів.
Рекомендована література:
Бобровский С. И.Delphi7. Учебный курс. - С.Пб. Питер, 2004. – 735 с.
Я. М. Глинский Інформатика. Алгоритмізація і програмування. Книжка 1. - Львів, 2003. – 198 с.
Симонович С.В., Евсеев Г.А. Занимательное программирование:Delphi. – М.: АСТ-Пресс Книга; Издательство «Развитие», 2003. – 368 с.
Кен Хендерсон. Руководство Разработчика баз данных в Delphi2. – К. Диалектика, 1997, - 543 с.
Контрольні запитання:
Які типи рядкових змінних у Delphi Ви знаєте?
Вкажіть на особливості кожного типу рядкових змінних.
Що називають обробником подій у Delphi&
Який інструментарій використовують для створення коду обробника подій?
Теоретичні відомості.
1. Типи даних для роботи з рядками
Короткі рядки типу ShortString і String[N]:Короткі рядки мають фіксована кількість символів. Рядок ShortString може містити 255 символів. Рядок String[N] може містити N символів, але не більш 255. Перший байт цих перемінних містить довжину рядка.
Довгий рядок типу String : При роботі з цим типом даних пам'ять виділяється в міру необхідності (динамічно) і може займати всю доступну програмі пам'ять. Спочатку компілятор виділяє для перемінної 4 байти, у яких розміщається номер комірки пам'яті, починаючи з якої буде розташовуватися символьний рядок. На етапі виконання програма визначає необхідну довжину ланцюжка символів і звертається до ядра операційної системи з вимогою виділити необхідну пам'ять.
Процедури і функції для роботи з короткими і довгими рядками представлені в додатку.
Широкий рядок типу WideString : Уведена для забезпечення сумісності з компонентами, заснованими на OLE-технології. Від типу String відрізняється тільки тим, що для представлення кожного символу використовується не один, а два байти.
Нуль-термінальний рядок типу Pсhar : Являє собою ланцюжок символів, обмежений символом #0. Максимальна довжина рядка обмежена тільки доступній програмі пам'яттю. Нуль-термінальні рядки широко використовуються при звертаннях до API-функцій Windows (API - Application Program Interface - інтерфейс прикладних програм).
Представлення рядка у виді масиву символів: Рядок може бути описаний як масив символів. Якщо масив має нульову границю, він сумісний з типом PChar.
Var
MasS : array[1..100] of Char;
На відміну від нуль-термінального рядка тут довжина має фіксоване значення і не може змінюватися в процесі виконання програми.
2. Компонент TlistBox
Компонент TListBox являє собою список, елементи якого вибираються за допомогою клавіатури або миші. Список елементів задається властивістю Items, методи Add, Delete і Insert якого використовуються для додавання, видалення і вставки рядків. Об'єкт Items (TString) зберігає рядка, що знаходяться в списку. Для визначення номера виділеного елемента використовується властивість ItemIndex.