Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Властивості класів,,,.docx
Скачиваний:
5
Добавлен:
26.10.2018
Размер:
252.91 Кб
Скачать

Властивості класів

Оголошення класу

Клас - це тип даних, визначений користувачем. Те, що в Delphi є множина визначених класів, не суперечить цьому визначенню - адже розробники Delphi теж користувачі Object Pascal. Клас повинен бути оголошений до того, як буде оголошена хоча б одна змінна цього класу, тобто клас не може оголошуватись усередині оголошення змінної. Клас повинен оголошуватись з областю видимості - програма або модуль. Синтаксис оголошення класу такий 

Туре <ім'я класу> = Class (<ім'я класу - батька>) public {доступно всім}  <поля, методи, властивості, події> published {видні в Інспекторі Об'єктів і змінювані}  <поля, властивості>  protected {доступ тільки нащадкам}  <поля, методи, властивості, події> private {тільки в модулі} <поля, методи, властивості, події>

Ім'я класу може бути будь-яким допустимим ідентифікатором. Але прийнято ідентифікатори більшості класів починати із символу "Т". Ім'я класу-батька може не вказуватися. Тоді передбачається, що даний клас є безпосереднім нащадком TObject - найбільш загального з визначених класів. Таким чином, еквівалентні такі оголошення: 

Type TmyClass = class . . . end; Type TmyClass = class (TObject) . . . end;

Клас успадковує поля, методи, властивості, події від своїх предків і може скасовувати якісь із цих елементів класу або вводити нові. Доступ до елементів класу визначається тим, у якому розділі вони оголошені. Якщо ви потребуєте спеціального захисту об'єкта або його частини, то для цього необхідно помістити його в окремий модуль.

З одного боку, Delphi, будучи візуальним середовищем розробки додатків, орієнтований на тих програмістів, що із готових компонент "збирають" конкретні додатки для кінцевих користувачів. З іншого боку, будучи розширюваним об'єктно-орієнтованим інструментом, цей продукт становить інтерес і для спеціалістів, що займаються нарощуванням функціональних можливостей вже існуючих програмних бібліотек. Тому, виглядає абсолютно логічною поява в Object Pascal нових розділів в описі класів - publishedі protected. Разом із раніше введеними розділами (public і private) вони надають повний контроль над можливостями використання і "безболісної" (у значенні запобігання фатальних із погляду ідеології помилок) модифікації компонентів Visual Component Library (VCL - бібліотека класів Delphi).

Розділ public (відкритий, доступні) призначений для оголошень, що доступні для зовнішнього використання. Секція public не накладає обмежень на область видимості в ній полів, методів і властивостей-їх можна викликати в будь-якому іншому модулі програми. Це відкритий інтерфейс класу.

Розділ published (що публікується, декларовані) містить відкриті властивості, що з'являються в процесі проектування на сторінці властивостей Інспектора Об'єктів і котрі користувач може впроваджувати в процесі проектування. Секція published так само не обмежує область видимості, проте в ній перераховуються властивості, що повинні бути доступні не тільки на етапі виконання, але і на етапі конструювання програми (тобто у вікні Інспектора Об'єктів). Секція published використовується тільки при розробці компонентів. Зазначимо, що за замовченням (без оголошення) секція вважається оголошеною як published. Така секція розташовується на самому початку оголошення класу будь-якої форми і продовжується до першої оголошеної секції. У неї середовище Delphi поміщає опис вставлених у форму компонентів. Програмісту не варто поміщати в неї власні елементи опису класу або видаляти з неї елементи, вставлені середовищем.

Розділ private (закритий, особисті) містить оголошення полів, процедур і функцій, використовуваних тільки усередині даного класу. Секція private звужує область видимості до мінімуму: особисті елементи опису доступні тільки усередині методів даного класу і підпрограмах, що знаходяться в тому ж модулі, де описаний клас. Елемент, оголошений у секції private, стає недоступним навіть найближчим нащадкам класу, якщо вони розміщаються в інших модулях.

Розділ protected (захищений) містить оголошення, доступні тільки для нащадків класу. Як і у випадку закритих елементів, можна сховати деталі реалізації захищених елементів від кінцевого користувача. Проте, на відміну від закритих, захищені елементи залишаються доступні для програмістів, що захочуть робити від цього класу похідні об'єкти, причому не потрібно, щоб похідні об'єкти оголошувалися в цьому ж модулі.

В Object Pascal дозволяється скільки завгодно разів оголошувати будь-яку секцію, причому порядок секцій не має значення. Будь-яка секція може бути порожньою. 

Властивості

Поля даних, виходячи з принципу інкапсуляції, завжди повинні бути захищені від несанкціонованого доступу. Доступ до них, як правило, повинен здійснюватися тільки через властивості, що включають методи читання і запису полів. Тому поля доцільно оголошувати в розділі private - закритому розділі класу. У рідких випадках їх можна поміщати в protected - захищеному розділі класу, щоб можливі нащадки даного класу мали до них доступ. Традиційно ідентифікатори полів збігаються з іменами відповідних властивостей, але з додаванням у якості префікса символу 'F'.

Властивість оголошується оператором виду:

property <ім'я властивості>: <тип> read <ім'я поля або методу читання> write <ім'я поля або методу запису> <директиви запам'ятовування>;

Якщо в розділах read або write цього оголошення записане ім'я поля, значить передбачається пряме читання або запис даних.

Якщо в розділі read записане ім'я методу читання, то читання буде здійснюватися тільки функцією з цим ім'ям. Функція читання - це функція без параметра, що повертає значення того типу, що оголошений для властивості. Ім'я функції читання прийнято починати з префікса Get, після якого іде ім'я властивості.

Якщо в розділі write записане ім'я методу запису, то запис буде здійснюватися тільки процедурою з цим ім'ям. Процедура запису - це процедура з одним параметром того типу, що оголошений для властивості. Ім'я процедури запису прийнято починати з префікса Set, після якого іде ім'я властивості.

Якщо розділ write відсутній в оголошенні властивості, значить ця властивість тільки для читання, і користувач не може задавати її значення.

Директиви запам'ятовування визначають, як треба зберігати значення властивостей при зберіганні користувачем файла форми.dfm. Частіше усього використовується директива 

Default <значення за замовченням>

Вона не задає початкові умови. Це справа конструктора. Директива просто говорить, що якщо користувач у процесі проектування не змінив значення властивості за замовченням, то зберігати значення властивості не треба.

Наведемо приклад. Нехай потрібно оголосити клас з ім'ям MyClass, що успадковує безпосередньо TObject і має властивість цілого типу з ім'ям А, тоді оголошення цього класу може мати вигляд: 

Type MyClass = class Private FA: integer; Protected Procedure Set (Value: integer); {Процедура запису}  Published Property А: integer read FA write Set default true;  End;

Тут вводиться закрите поле FA, оголошується захищена функція Set, використовувана для запису значення в це поле, і вводиться опублікована властивість А, що оперує цим полем. В оголошенні властивості після ключового слова read записане просто ім'я поля. Це означає, що функція читання відсутня, і користувач може читати безпосередньо значення поля. Після ключового словаwrite іде посилання на функцію запису Set, за допомогою якої будуть записуватися в поле А нові значення. У цій функції можна передбачити якісь перевірки допустимості значення А, що вводиться.

Опис цієї функції повинен міститись у розділі implementation того модуля, в якому оголошений клас, і може мати вигляд:

Procedure Set (Value: integer); Begin If . . . Then FA := Value; End;

У наведеному прикладі опис властивості А міститься в розділі published. Отже, якщо цей клас описує створюваний вами новий компонент, то після його установки в систему властивість А буде з'являтися у вікні Інспектора Об'єктів при використанні цього компонента. Якщо перенести оголошення властивості в розділ public, то властивістю, як і раніше, можна буде користуватися, але тільки під час виконання додатка, оскільки у вікні Інспектора Об'єктів вона з'являтися не буде.

Якщо необхідно, щоб поле було доступно тільки для читання або тільки для запису, варто опустити відповідно частину write абоread. Взагалі говорячи, властивість може і не зв'язуватися з полем. Фактично, вона описує один або два методи, що здійснюють деякі дії над даними того ж типу, що і властивість.

Наступний фрагмент коду пояснює області видимості. 

Unit Unit1; Interface Uses Controls, Forms; Type Tform1 = class(TForm); Private FintField: integer; Procedure SetValue(Value: integer); Function GetValue: integer; Published Property IntField: read GetValue write SetValue; Protected Procedure Proc1; Public Procedure Proc2; End; Var Form1: Tform1; Implementation Procedure Tform1.Proc1; FintField := 0; + IntField := 0; + Proc1; + Proc2; + End; Initialization Form1.FintField := 0; + Form1.IntField := 0; + Form1.Proc1; - Form1.Proc2; + End. Unit Unit2; Interface Uses Controls, Unit1; Type Tform2 = class(Tform1) Procedure Proc3; end; Var Form2: Tform2; Implementation Procedure Tform2.Proc3; FintField := 0; - IntField := 0; + Proc1; + Proc2; + End; Initialization Form2.FintField := 0; - Form2.IntField := 0; + Form2.Proc1; - Form2.Proc2; + End.

Основи програмування в середовищі Delphi 7 0

Этот ноутбук поразит Вас

Мощная производительно сть по низкой цене

ЖМИТЕ на картинку и ГРУДЬ вырастет в 2 раза

Упражнения можноделать  ...

Кафедра: Автоматика та інформаційні технології  Курсова робота  На тему: "Основи програмування в середовищі Delphi 7.0"  Єкатеринбург, 2009 рік 

Зміст  Введення  1. Основні поняття об'єктно-орієнтованого програмування.  2. Інтегроване середовище розробки Delphi: призначення і загальний опис середовища  3. Загальна організація програми в Delphi  4. Деякі довідкові відомості для роботи у середовищі Delphi  Висновок  Список літератури 

Введення  Припускаю, що ви поки ще не чули цієї назви. Хоча, бути може, й чули. Delphi - це грецьке місто, де жив дельфійський оракул. І цим ім'ям був названий новий програмний продукт із феноменальними характеристиками.  Hадо відзначити, що до моменту виходу продукту обстановка навколо компанії Borland складалася не кращим для неї чином. Подейкували про можливий перепродаж компанії, курс акцій компанії нестримно котився вниз. Зараз вже можна без жодних сумнівів стверджувати, що період труднощів позаду. Hеверно, звичайно, було б говорити, що тільки Delphi з'явився причиною відновлення компанії; крім Delphi, у Borland з'явилися і інші чудові продукти, так само, як і Delphi, що грунтуються на нових, що з'явилися недавно у компанії Borland, технологіях. Я маю на увазі нові BDE 2.0, BC + + 4.5, Paradox for Windows 5.0, dBase for Windows 5.0, BC + + 2.0 for OS / 2.  Тим не менш, саме Delphi став тим продуктом, на прикладі якого стало ясно, що у Borland є ще порох у порохівницях, і що один єдиний продукт може настільки вдало поєднувати кілька передових технологій. 

1. Основні поняття об'єктно-орієнтованого програмування  Об'єктно-орієнтоване програмування (ООП) зародилося в мовах програмування Паскаль, Ада, С + +. До появи ООП технологія створення комп'ютерних програм базувалася на процедурному програмуванні, в якому основою програм були функції і процедури, тобто дії. Створена таким чином комп'ютерна програма відрізнялася чітким алгоритмом роботи - послідовністю дій для досягнення поставленої мети. У ООП основною точкою опори при проектуванні програми є -об'єкт. Програма ООП - це не послідовність операторів, а сукупність об'єктів і способів їх взаємодії. Обмін інформацією між об'єктами відбувається за допомогоюповідомлень.  1) Об'єктом назвемо поняття, абстракцію або будь-який предмет з чітко окресленими кордонами, який має сенс у контексті розглянутої прикладної проблеми. Об'єкти можуть успадковувати характеристики і поведінку інших об'єктів, званих батьківськими або предками. Наявність механізму наслідування є самим істотним розходженням між звичайним програмуванням на Pascal ООП програмуванням в Delphi.  2) Основним поняттям ООП є поняття класу: класом - називають особливу структуру, яка може мати у своєму складі поля, методи і властивості. Клас - це безліч об'єктів, які володіють внутрішніми властивостями, притаманними будь-якому об'єкту класу. Причому специфіка клас проводиться шляхом визначення його внутрішніх властивостей (классообразующій ознаки). Клас виступає в якості об'єктного типу даних. Класи мають поля (як тип даних Record), властивості (що нагадують поля, але мають додаткові описи) та методи (підпрограми, які обробляють поля і властивості класу). Базовим класом для всіх об'єктів у Delphi, є класTObject. Цей клас інкапсулює основні функції, властиві всім об'єктам Delphi. Всі класи в Delphi є прямими або непрямими спадкоємцями цього класу.  3) Ієрархія об'єктів класу. Кожен конкретний клас має свої особливості поведінки і характеристик, що визначають цей клас. Наприклад, клас геометричних фігур можна розділити на два підкласи: плоскі і об'ємні фігури. Плоскі фігури можуть мати вершини і не мати їх. Плоскими фігурами, що не мають вершин, є окружності і еліпси. 

Геометричні фігури 

Об'ємні 

Плоскі 

З вершинами 

Без вершин 

Окружність 

Еліпс 



При використанні ООП слід пам'ятати, що якщо характеристика одного разу визначена, то всі категорії, розташовані нижче від цього визначення, теж будуть містити цю характеристику. Тому, якщо визначено коло, то немає потреби дізнаватися скільки у неї вершин, тому що вона відноситься до підкласу фігур, які не мають вершин. 
4) Успадкування. У термінах Паскаль об'єкт найбільш схожий з типом Record, який є структурованим типом для об'єднання декількох пов'язаних елементів під одним ім'ям. Припустимо, що потрібно написати програму, яка підраховує розмір стипендій та заробітної плати в інституті чи університеті. Змінна (назвемо їїTPerson), що містить дані про імена студентів і співробітників, дату та розмірі виплат, могла б виглядати таким чином: 
TPerson = Record 
Name: String [30]; {поле - ім'я} 
Date: String [10]; {полі - дата} 
RazV: Real; {полі - розмір виплати} 
End; 
Кожне значення, присвоєне змінній TPerson, є екземпляром типу record, представляє два рівня абстракції, тобто можна розглядати поля Ім'я, Дата, Размер_виплат окремо, або в сукупності для опису конкретної людини як TPerson. 
Припустимо, що програма повинна враховувати виплати грошей студентам і співробітникам. У кожній групі виплати проводяться особливим способом. Можна створити інший тип запису для групи студент. Для отримання даних про те, скільки грошей має отримувати студент, необхідно знати його середній бал, можна побудувати запис TStudent види: 
TStudent = Record 
Name: String [30]; 
Date: String [10]; 
RazV: Real; 
Ball: Real; {середній бал} 
End; 
Однак можна зберегти тип TPerson шляхом створення поля Student типу TPerson всередині типу TStudent. 
TSudent = Record 
Student: TPerson; 
Ball: Real; 
End; 
Така конструкція зручна і проста, тому постійно використовується в програмуванні. Для студента тип TStudent повинен містити всі поля, які є в записі TPerson, при цьому тип TStudent є типом нащадком для типу TPerson. TStudent успадковує все, що належить TPerson, і крім того, містить нові поля, які роблять TSudent унікальним. 
Процес, за допомогою якого один тип успадковує характеристики іншого типу, називається спадкуванням. У Delphi всі класи є нащадками класу TObject. У прикладі два пов'язаних типу об'єктів могли б визначатися наступним чином: 
TPersonal = Object 
Name: String [30]; 
Date: String [10]; 
RazV: Real; 
End; 
5) Операції та методи. Функція (або перетворення), яку можна застосовувати до об'єктів даного класу, називається операцією. Якщо одна і та ж операціязастосовується до об'єктів різного класу, то її називають поліморфної. Зазвичай при роботі з записами виникає проблема ініціалізації полів запису. Для присвоєння полів, в розглянутому раніше прикладі, початкових значень можна використовувати оператор With, але при необхідності ініціалізувати більше одного запису доведеться використовувати велику кількість операторів With, які будуть виконувати одні й ті ж дії. Тому природним є створення ініціалізація процедури, яка узагальнює застосування оператора with до будь-якого примірника типу TPerson, переданого як параметр: 
Procedure Init (var Person: TPerson; N, D: String; R: Real); 
Begin 
With Person do begin 
Name: = N; 
Date: = D; 
RazV: = R; 
End; 
End; 
Процедура Init, включена в об'єкт спеціально для обслуговування типу TPerson, називається методом, тобто метод - це процедура або функція, зазначена в об'єкт таким чином, що екземпляр даного типу стає доступним для неї зсередини. Поля і методи є двома складовими частинами нової структури, званої об'єктом. З облік вищесказаного об'єкт TPerson можна описати таким чином: 
Type 
Tperson = Object; 
Name: String [30]; 
Date: String [10]; 
RazV: Real; 
Procedure Init (N, D: String; R: Real); 
End; 
Procedure TPerson. Init (N, D: String; R: Real); 
Begin 
Name: = N; 
Date: = D; 
RazV: = R; 
End; 
Таким чином, кожній операції відповідає метод - реалізація цієї операції для об'єктів даного класу. Кожна операція має один неявний аргумент - об'єкт, до якого вона застосовується. Вибір методу пов'язаний тільки з класом і об'єктом. Тепер для ініціалізації примірника типу TStudent досить просто викликати його метод: 
Var Person: TPerson; 
Person. Init (»Микола Іванович ', '25-06-1995', 40000); 
6) Визначення методів. Процес визначення методів нагадує створення модулів в Turbo Pascal. Усередині об'єкту метод визначається заголовком процедури або функції, що діє як метод: 
Type 
Tperson = Object; 
Name: String [30]; 
Date: String [10]; 
RazV: Real; 
Procedure Init (N, D: String; R: Real); 
Function GetName: String; 
Function GetDate: String; 
Function GetRazV: Real; 
End; 
Поля даних повинні бути оголошені перед оголошенням методів. Самі методи описуються поза визначення об'єкта як окрема процедура або функція. При визначенні методу його імені повинно передувати ім'я типу об'єкта, якому належить даний метод, з наступною точкою: 
Procedure TPerson. Init (N, D: String; R: Real); 
Begin 
Name: = N; 
Date: = D; 
RazV: = R; 
End; 
Function TPerson. GetName: String; 
Begin 
GetName: = N; 
End; 
Function TPerson. GetDate: String; 
Begin 
GetDate: = D; 
End; 
Function TPerson. GetRazV: Real; 
Begin 
GetRazV: = R; 
End; 
7) Властивості об'єкта. Сукупність даних і методів їх читання і запису називаються властивістю. Властивості об'єктів можна встановлювати в процесіпроектування, а також можна змінювати програмно під час виконання програми. (В процесі проектування додатків в середовищі програмування Delphi можна переглядати значення деяких із цих даних у вікні Інспектора Об'єктів і змінювати ці значення). 
8) Події та їх обробка. Середовищем взаємодії об'єктів є повідомлення, що генеруються в результаті настання різних подій. Подія - це взаємодія на об'єкт. Подіянастає в результаті дій користувача (переміщення курсору, натискання кнопки і т.п.). У кожному об'єкті визначено безліч подій, на які він може реагувати. У конкретних об'єктах можуть бути визначені обробники якихось із цих подій. До написання цих обробників і зводиться основне програмування за допомогою Delphi
Таким чином, можна визначити об'єкт як сукупність властивостей і методів, а також подій, на які він може реагувати. Зовнішнє управління об'єктом здійснюється через обробники подій. Ці обробники звертаються до методів та властивостей об'єкта. Початкові значення даних об'єкта можуть задаватися також у процесі проектування установкою різних властивостей. В результаті виконання методів об'єкта можуть відбуватися нові події, що сприймаються іншими об'єктами програми або користувачем. 

2. Інтегроване середовище розробки Delphi: призначення і загальний опис середовища

Delphi - це нащадок середовища програмування Turbo Pascal. Назва середовища походить від назви міста в Стародавній Греції, де знаходився знаменитийДельфійський оракул (храм Аполлона в місті Дельфи, жерці якого займалися прогнозами).  Система візуального об'єктно-орієнтованого проектування Delphi дозволяє:  1. Створювати закінчені додатки для Windows самої різної спрямованості.  2. Швидко створювати професійно виглядає віконний інтерфейс для будь-яких додатків; інтерфейс задовольняє всім вимогам Windows і автоматичноналаштовується на ту систему, яка встановлена, оскільки використовує функції, процедури та бібліотеки Windows.  3. Створювати свої динамічно приєднуються бібліотеки компонентів, форм, функцій, які потім можна використовувати з інших мов програмування.  4. Створювати потужні системи роботи з базами даних будь-яких типів.  5. Формувати і друкувати складні звіти, які включають таблиці, графіки і т.п.  6. Створювати довідкові системи, як для своїх програм, так і для будь-яких інших.  7. Створювати професійні програми установки для додатків Windows, враховують всю специфіку і всі вимоги операційної системи.  Delphi - швидко розвивається. Перша версія Delphi була випущена в лютому 1995 року, в 1996 році вийшла друга версія, 1997 - третя, 1998 - четверта, 1999 - п'ята, 2001 - шоста. Всі версії, починаючи з Delphi 2.0, розраховані на розробку 32-розрядних додатків, тобто додатків для операційних систем Windows 95/98, NT і т.д. У 2002 році вийшла сьома версія, основним нововведенням в якій були Інтернет-технології.  Загальний опис середовища.  Інтегроване середовище розробки Delphi - це середовище, в якій є все необхідне для проектування, запуску і тестування створюваних додатків. Більшість версій Delphi випускається в декількох варіантах: а) стандартна, б) професійна версія, в) розробка баз даних предметних областей. Ці варіанти розрізняються, в основному різним рівнем доступу до систем управління базами даних. Останні два варіанти є найбільш потужними в цьому відношенні. Бібліотеки компонентів в різних варіантах практично однакові.  1) Верхній частині вікна середовища відображається смуга головного меню. Призначення кожного пункту меню можна уточнити в довідковій системі Delphi. Для отримання довідки слід вибрати цікавий пункт меню і натиснути клавішу F1. Вибір команди меню виконується будь-яким із стандартних способів: F10, Alt + гаряча клавіша або клацанням миші на потрібному пункті меню.  Призначення команд меню представлені в таблиці: 

Розділ меню 

Призначення 

1) Меню File (Файл

Розділи меню дозволяють створювати новий проект, нову форму, відкрити раніше створений проект або форму, зберегти проекти або форму у файлах з заданими іменами. 

2) Меню Edit (Правка) 

Розділи цього меню дозволяють виконувати звичайні для додатків Windows операції з буфером обміну, а також дають можливість вирівнювати групи розміщених на формі компонентів за розмірами і розташуванням. 

3) Меню Search (Пошук) 

Розділи цього меню дозволяють здійснювати пошук фрагментів тексту, помилок, об'єктів, модулів, змінних і символів у редакторі коду. 

4) Меню View (Вид) 

Розділи цього меню дозволяють вивести на екран або приховати різні елементи середовища проектування і відкрити вікна, пов'язані з інтегрованим відладчиком. 

5) Меню Project (Проект) 

Розділи меню дозволяють додавати і видаляти з проекту форми, задавати опції проекту, компілювати проект без його виконання, дати інформацію про розміри програми. 

6) Меню Run (Виконати) 

Надає можливість виконувати проект у нормальному або отладочном режимах, по кроках, зупиняючись у вказаних точках, переглядаючи значення змінних і т.д. 

7) Меню Component (Компонент) 

Містить меню, що розкривається, яке дозволяє працювати з компонентами: створювати нові компоненти, змінювати палітру компонентів і т.п. 

8) Меню Database (База даних) 

Розділ меню дозволяє використовувати інструментарій для роботи з базами даних. 

9) Меню Tools (Сервіс) 

Включає ряд розділів, що дозволяють виконувати різні допоміжні програми: редактор зображень, програми, конфігурують бази даних і мережі і т.п. 

10) Меню Windows (Вікно) 

Містить список відкритих вікон середовища та надає можливість переходу з одного вікна в інше. 

11) Меню Help (Допомога) 

Містить розділи, що допомагають працювати з довідковою системою середовища програмування Delphi. 

2) Нижче смуги головного меню розташовані дві інструментальні панелі. Ліва панель (що складається, в свою чергу, із трьох панелей) містить два ряди кнопок, які дублюють деякі найбільш часто використовувані команди меню (відкрити, зберегти, зберегти все і т.д.). Права панель містить панель бібліотеки візуальних компонентів (або палітра). Палітра компонентів містить ряд сторінок, закладки яких видно в її верхній частині. Сторінки згруповані у відповідності з їх змістом і призначенням. Оскільки число надаваних компонентів зростає від версії до версії, то зупинимося на основних (12 сторінок).  Основні Палітри компонентів представлені в таблиці: 

Палітра компонентів 

Призначення 

1. Палітра компонентів Standard (Стандартна

Більшість компонентів на цій сторінці є аналогами екранних елементів операційної системи Windows: меню, кнопки, смуги прокручування, панелі і т.п. Імена компонентів можна дізнатися з підказки. Призначення компонентів можна уточнити, використовуючи систему контекстної довідки Delphi. 

2. Палітра компонентів Additional (Додаткова) 

Містить більш розвинуті компоненти: а) відтворення звуку, музики і відео, б) відображення графічної інформації. 

3. Палітра компонентів System (Системна) 

Надає можливість об'єднувати окремі елементи, такі як списки каталогів і файлів, а також генерувати події через певні проміжки часу. 

4. Палітра компонентів Win32 

Містить компоненти, що дозволяють створеним програмам використовувати інтерфейс Windows. 

5. Палітра компонентів Dialogs (Діалогова) 

Містить стандартні діалогові вікна для операцій над файлами, пошуку та заміни тексту, вибір шрифтів, квітів і т.д. 

6. Палітра компонентів Data Access, Data Controls (Сервіс баз даних) 

Використовує механізм баз даних для організації доступу до файлів баз даних різних форматів. 

7. Палітра компонентів QReport (Звіти) 

Надає компоненти для візуального проектування звітів баз даних. 

8. Палітра компонентів Servers (Сервіс) 

Надає компоненти-спадкоємці для доступу до всіх серверним об'єктах Microsoft Office. 

9. Палітра компонентів Samples (Приклади) 

Містить компоненти-приклади, які можна додавати у власні програми. 

10. Палітра компонентів Internet 

Надає компоненти для розробки додатків, що дозволяють створювати HTML-файли безпосередньо з файлів баз даних та інших типів, що взаємодіють з іншими додатками для Інтернету. 

3) Правіше смуги головного меню розташовується ще одна невелика інструментальна панель, що містить список, що розкривається і дві кнопки. Ця панель служить для збереження і вибору різних конфігурацій вікна середовища, які можна створювати і запам'ятовувати.  4) Під палітрою компонентів розташовується вікно форми з розміщеними на ній компонентами. Форма є основою майже всіх додатків Delphi. Форму можна розуміти як типове вікно Windows. Вона має ті ж властивості, що й інші вікна. Під час проектування форма покрита сіткою з точок. У вузлах цієї сітки розміщуються ті компоненти, які поміщені на форму. Під час виконання програми ця сітка не видна.  5) В основному полі вікна зліва знаходиться вікно Інспектора об'єктів, за допомогою якого надалі можна задавати властивості компонентів і обробники подій. Інспектор об'єктів складається з двох сторінок, кожну з яких можна використовувати для визначення поведінки активного компонента. Перша сторінка - це Властивості, друга - Події.  Розглянемо деякі властивості будь-якого компонента: 

Властивість 

Призначення 

Caption (напис) 

Назва компонента 

Color 

Колір поверхні компонента 

Font Color 

Колір шрифту 

Font Height 

Висота шрифту 

Font Name 

Ім'я шрифту 

Font Size 

Розмір шрифту 

Style fsBold 

Стиль написи на компоненті - Жирний 

Style fsItalic 

Стиль написи на компоненті - курсив 

Style fsUnderline 

Стиль написи на компоненті - підкреслення 

Style fsStrikeOut 

Стиль написи на компоненті - закреслення 

Кожен компонент має свій набір властивостей, який відповідає призначенню цього компонента.  Сторінка Подій - друга частина Інспектора об'єктів. На ній зазначені всі події, на які може реагувати вибраний об'єкт.  6) Одним з найбільш важливих елементів середовища Delphi є вікно Редактора коду. Воно розташовується нижче вікна форми, зазвичай при першому погляді на екран невидимо, тому що його розмір дорівнює розміру форми і вікно Редактора коду практично повністю перекривається вікном форми. Редактор коду є повноцінним програмним редактором. У заголовку вікна редактора коду відображається ім'я поточного файлу, з текстом якого проводиться робота (стандартне ім'я - Main.pas). У нижній частині вікна редактора кодів розташовується рядок стану. У самій лівій її позиції відображається позиція курсору: номер рядка та колонки.  7) Вище вікна Інспектора об'єктів розташоване вікно Дерево об'єктів, яке відображає структуру компонентів додатка з точки зору їх належності один до одного.  Примітка: Сторінка подій пов'язана з Редактором коду, якщо двічі клацнути мишею по правій стороні якого або пункту, то відповідний даної події код буде автоматично поміщений у вікно Редактора коду.